
We hope to reproduce CVE-2021-41773 to deepen our understanding of real-world cybersecurity vulnerabilities so that we can be knowledgeable about exploits in industry and academic work.
Team Members: Emily Nguyen, Jonathan Kim, Joon Jang
Project Topic Selection: Project 1: Recreate and Exploit a Real-World CVE: Path Traversal (CVE-2021-41773) in the Apache HTTP Server.
Project Goal: We hope to reproduce CVE-2021-41773 to deepen our understanding of real-world cybersecurity vulnerabilities so that we can be knowledgeable about exploits in industry and academic work.
This project recreates and analyzes the Apache HTTP Server vulnerability CVE-2021-41773, a path traversal vulnerability that allows attackers to access files outside of the intended web directory.
The project is designed to go beyond simply demonstrating the exploit. We break the work into three parts:
CVE-2021-41773 is caused by incorrect path normalization in Apache’s request handling. Certain encoded traversal patterns are not properly interpreted, allowing attackers to bypass directory restrictions.
pip install requests)sudo docker build -t vulnerable-apache .
sudo docker run -d -p 8000:80 --name vuln-server vulnerable-apache
python3 exploit.py
sudo bash patch-analysis/start_part2_servers.sh
python3 patch-analysis/test_patch.py
sudo bash mitigation-hardening/start_mitigation_servers.sh
python3 mitigation-hardening/test_mitigation.py
# Stop all running containers
sudo docker stop vuln-server patched-server mitigated-server
# Remove containers
sudo docker rm vuln-server patched-server mitigated-server
# (Optional) Remove Docker images
sudo docker rmi vulnerable-apache patched-apache mitigated-apache
Jonathan Kim - Built the vulnerable Apache environment, configured the server, and implemented the path traversal exploit script.
Emily Nguyen - Implemented patch analysis by setting up a patched Apache server and developing a comparison script to test exploit behavior across versions.
Joon Jang - Implemented mitigation hardening using Apache configuration changes and created scripts to test that the exploit is blocked while normal traffic is allowed.