
CVE-2023-4220 PoC Chamilo RCE
此仓库包含针对 CVE-2023-4220 的概念验证(PoC),这是一个影响 Chamilo LMS 的远程代码执行(RCE)漏洞。该漏洞允许未经身份验证的攻击者利用大文件上传功能,在服务器上执行任意代码。
[!IMPORTANT] 本仓库仅供教育目的和合法研究使用。请负责任地使用此代码,并且仅在有权限测试的系统上使用。作者对因滥用所提供信息而造成的任何损害不承担任何责任。
学习管理系统是一种用于规划、实施和评估特定学习过程的软件应用程序或基于 Web 的技术。它用于电子学习实践,最常见的形式包括两个元素:一个执行基本功能的服务器和一个由讲师、学生和管理员操作的用户界面(UI)。
Chamilo 是一个基于 PHP 的开源学习管理系统(LMS),用于促进在线教育和培训。它提供课程创建、内容管理、评估、协作和提供教育资源等功能。
requests & argparse & time 库[!NOTE] 此 PoC 已在 python 3.11.9、requests 2.32.3 和 chamilo 1.11 上测试通过
克隆仓库:
克隆仓库并进入其目录。
git clone https://github.com/VanishedPeople/CVE-2023-4220.git
cd CVE-2023-4220
安装依赖:
pip install -r requirements.txt
识别目标: 确保您拥有易受攻击的目标 Chamilo LMS 实例(受影响版本)。
运行漏洞利用脚本: 使用目标的 URL 执行漏洞利用脚本。
上传恶意载荷: 漏洞利用脚本将利用大文件上传功能,向目标 Chamilo LMS 实例上传恶意文件。
触发远程代码执行: 上传后,恶意文件在服务器上执行,使攻击者获得远程代码执行能力。
结果: 根据使用的载荷和选项,您应该会看到服务器上的 shell 或命令执行结果。
检查 LMS 是否易受攻击
python3 main.py --url <URL> -m check
python3 main.py --url <URL> --mode webshell
产生一个反弹 shell
python3 main.py --url <URL> --mode revshell
要缓解此漏洞,请确保将 Chamilo LMS 更新到已解决此问题的最新版本。此外,建议对文件上传实施严格的验证和身份验证,以避免出现类似漏洞。
本项目依据 Apache License 2.0 许可 - 详见 LICENSE 文件。