此 Python 脚本利用了 Zabbix 服务器上配置错误的 SAML 认证流程。通过提供 Zabbix 服务器 URL 和用户(默认:Admin),脚本会生成一个经过认证的 Zabbix 会话(zbx_session),并尝试使用该会话访问仪表板。
要使用该脚本,请从命令行运行,并提供目标 Zabbix 服务器 URL。你还可以选择指定用户和自定义 User-Agent。
python cve-2022-23131.py <target_url>
-u 或 --user:指定要认证的 Zabbix 用户(默认:Admin)。-a 或 --user-agent:提供自定义的 User-Agent 字符串。python cve-2022-23131.py https://zabbix.local
python cve-2022-23131.py https://zabbix.local -u JohnDoe
python cve-2022-23131.py https://zabbix.local -u JohnDoe -a "CustomUserAgent/1.0"
该脚本会指示漏洞利用是否成功。如果成功,它会打印出经过认证的 zbx_session,你可以使用它访问 Zabbix 仪表板。
以下是脚本运行的示例:

成功获取 zbx_session 值后,你可以手动更新浏览器中的 Cookie,以指定的用户身份进行认证。请按照以下 Chrome 或 Firefox 的步骤操作。
zbx_session cookie。zbx_session 值,然后按 Enter。zbx_session cookie。zbx_session 值,然后按 Enter。以下是在开发者工具中更新 Cookie 的示例:

此漏洞利用的文档致谢 @random-robbie、@jweny 和 @Mr-xn。我只是对脚本进行了修改,因为发现它不再按预期工作。