CVE-2022-47966 是一个严重的未经身份验证的远程代码执行漏洞,影响了至少 24 款本地部署的 ManageEngine 产品。该漏洞仅在启用 SAML SSO 时适用。对于部分产品,如果之前启用过 SAML SSO 也同样适用。
该脚本是一个免费的扫描器,可用于扫描部分(但尚未全部)受影响的 ManageEngine 产品中的 CVE-2022-47966。
git clone https://github.com/vonahisec/CVE-2022-47966-Scan.git
cd CVE-2022-47966-Scan
pip install -r requirements.txt
或:
pip3 install -r requirements.txt
usage: cve_2022_47966_scan.py [-h] [-f FILE] [-t TARGETS] [-o OUTPUT_DIR]
扫描 ManageEngine Web 实例以发现 CVE-2022-47966
options:
-h, --help 显示此帮助信息并退出
-f FILE 包含待扫描 URL 列表的文件
-t TARGETS 逗号分隔的待扫描 URL 列表
-o OUTPUT_DIR 输出目录
目前,以下受影响的产品得到完全支持:
此外,以下产品得到部分支持,即脚本可以获取版本,但无法检查是否启用了 SAML:
以下产品不支持:
未来可能会添加对其中部分产品的支持,但该脚本似乎不太可能支持所有产品。
vulnerable:目标未打补丁且启用了 SAMLpotentially_vulnerable:目标未打补丁,并且:
not_patched:目标未打补丁但未启用 SAML。这意味着目标当前不存在漏洞,但启用 SAML 后可能变得易受攻击。likely_not_vulnerable:根据执行的检查,目标似乎不易受攻击。unknown:无法确定漏洞状态,很可能是因为无法获取产品版本或无法识别版本。
脚本将生成一个 JSON 文件,名为cve_2022_47966_scan.json - JSON 文件,包含脚本识别的任何系统的产品名称、版本、SAML 配置状态、漏洞状态及其他相关信息。cve_2022_47966_scan.txt - 文本文件,包含人类可读的结果细分。这与打印到控制台的报告相同(不包括 ANSI 颜色)。cve_2022_47966_scan_unidentified.json - JSON 文件,包含无法识别但仍值得报告的系统信息,因为在服务器响应的主体中发现了字符串 ManageEngine 和/或 manageengine。为了在存在上述限制的情况下提供相对完整的结果,该脚本会报告所有系统,包括发现不易受攻击的系统以及可能是 ManageEngine 产品但未被脚本识别的 Web 应用。
扫描器非常轻量。对于大多数受支持的应用,扫描器仅执行两次 HTTP 请求:
对于少数产品,会额外执行一次 GET 请求以手动跟随重定向。 对于某些产品,甚至不会执行 POST 请求。
请参考官方 ManageEngine 安全公告,获取受影响应用的完整列表及相应补丁。
此扫描器按原样提供。欢迎提交 PR 和 issue,我们希望在未来增加对其他目标的支持。然而,我们无法保证对此工具的持续支持。