
CVE-2021-21980
يحتوي هذا المستودع على قالب Nuclei عالي الثقة للكشف عن CVE-2021-21980 (اجتياز المسار في vSphere Web Client) وبيئة محاكاة صغيرة تعيد إنتاج السلوك الضعيف للاختبار المحلي الآمن.
الملفات:
cve-2021-21980.yaml: قالب Nuclei مع متغيرات ترميز متعددة ومطابقاتapp.py: تطبيق Flask صغير يحاكي ثغرة اجتياز المسار /eam/vibDockerfile: صورة حاوية لخادم المحاكاة مع شهادة TLS ذاتية التوقيعdocker-compose.yml: تشغيل خادم المحاكاة على المضيف 8443requirements.txt: تبعيات Pythoncd C:\Users\gui\Documents\hi
docker-compose up --build -d
سوف يستمع خادم المحاكاة على https://localhost:8443 (شهادة TLS ذاتية التوقيع).
curl -k "https://localhost:8443/" # should return VMware vSphere Web Client (mock)
curl -k "https://localhost:8443/eam/vib?id=../../../../../../../../../../etc/passwd"
يجب أن تتلقى محتوى ملف المحاكاة /app/sensitive/passwd-mock.
nuclei -t cve-2021-21980.yaml -u https://localhost:8443 -insecure
إذا كنت ترغب في اختبار العديد من متغيرات الترميز، قم بتعيين قالب Nuclei للتشغيل مع مستوى عالٍ من التفاصيل.
قم بتشغيل run_local_test.ps1 الذي يقوم بالبناء والانتظار حتى يصبح جاهزاً وتنفيذ فحوصات curl، بالإضافة إلى Nuclei إذا كان متاحاً.
powershell -ExecutionPolicy Bypass -File .\run_local_test.ps1
تثبيت Nuclei على Windows (سريع):
iwr -useb get.scoop.sh | iex
scoop install coreutils
scoop install nuclei
Invoke-WebRequest -Uri https://github.com/projectdiscovery/nuclei/releases/latest/download/nuclei_windows_amd64.zip -OutFile nuclei.zip
Expand-Archive -Path nuclei.zip -DestinationPath .\nuclei
Add-Content -Path $PROFILE -Value 'set PATH=$Env:PATH;$(Resolve-Path .\nuclei)'
إذا لم يكن nuclei في PATH، فسيتم تنفيذ حتى اختبارات curl فقط.
إذا واجهت مشكلة في بناء صورة Docker، تأكد من تثبيت Docker Desktop وتمكين 'استخدام محرك WSL 2'.
سيتم إرجاع ملف /etc/passwd أو ملف مشابه إذا كان الخادم ضعيفاً.
الأمان: احصل دائمًا على إذن صريح قبل فحص أو استغلال الأنظمة.
run_local_test.ps1