CVE-2021-47704CVE-2021-47704是OpenBMCS 2.4版本中的一个高危SQL注入漏洞。该漏洞存在于/debug/obix_test.php文件中,由于对用户输入的'id'参数缺乏充分的过滤和验证,攻击者可以通过构造恶意的SQL代码片段注入到数据库查询中。成功利用此漏洞,认证攻击者能够操纵数据库查询语句,进而提取敏感信息,包括但不限于用户凭据、配置文件数据、业务数据等。OpenBMCS是一个开源的建筑管理控制系统,广泛应用于智能楼宇和设施管理场景,因此该漏洞可能影响到大量部署该系统的企业和组织。由于攻击者需要具备一定的认证权限才能发起攻击,但其低权限要求使得该漏洞的利用门槛相对较低。
漏洞根源在于OpenBMCS 2.4的/debug/obix_test.php文件对HTTP GET请求中的'id'参数直接拼接到SQL查询语句中,未使用参数化查询或输入过滤机制。攻击者可通过构造类似id=1' OR '1'='1的Payload绕过认证或提取数据。具体来说,当用户请求/debug/obix_test.php?id=malicious_payload时,应用程序将用户输入直接代入SQL语句执行。例如,使用UNION SELECT语句可以联合查询数据库版本、用户名、密码哈希等信息。由于应用程序以数据库高权限账号运行,攻击者甚至可能通过LOAD_FILE或INTO OUTFILE等MySQL函数读取服务器敏感文件或写入webshell。该漏洞属于典型的OWASP Top 10中的A03:2021-Injection类别,CVSS 3.1评分6.5主要反映了其对机密性的高影响。