作者:Javier Carabantes
受影响软件:XOne Web Monitor
软件来源:https://xone.es/
受影响版本:02.10.2024.530 framework 1.0.4.9
在 XOne Web Monitor 版本 02.10.2024.530 framework 1.0.4.9 的登录功能中发现了一个未认证的SQL注入漏洞。此缺陷允许攻击者利用认证过程中对用户输入的不当处理,提取所有存储的用户名和密码。具体来说,登录端点的设计允许攻击者通过一个易受攻击的输入参数操纵 WHERE 子句。
/webcore/api/itf/DoAction
以下演示了如何使用精心构造的 POST 请求利用该漏洞:

当提供无效的登录信息(例如 "test:test")时,将发送以下请求:
POST /webcore/api/itf/DoAction HTTP/1.1
Host: redacted:44330
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: http://redacted:44330/
Content-Type: application/json
Authorization: Bearer redacted
Content-Length: 124
Origin: http://redacted:44330
Connection: keep-alive
{"action":"select","count":false,"page":{},"coll":"Usuarios","macros":{},"where":"(LOGIN='test')","sort":"","loadall":false}
注意密码并未发送,用户名被包裹在 where 属性中。 更改 LOGIN 字段的操作符将返回所有用户及其明文密码的完整列表:

响应揭示了数据库中存储的所有用户名及其对应密码的列表。 任何用户都有能力访问和获取敏感数据(客户、员工职位等)。

此SQL注入漏洞还支持在MSSQL中使用UNION查询,允许攻击者枚举并从数据库的其他表中检索数据。

同样的注入还允许LFD(本地文件读取),如果攻击者知道绝对路径,例如读取 C:/windows/system32/grouppolicy/machine/registry.pol,这是一个特权文件:

供应商已于 2024年11月11日 那一周收到此漏洞通知。
PoC中显示的网页已被下线。