
البحث عن المضيفات الافتراضية بين النطاقات غير القابلة للحل
البحث عن المضيفات الافتراضية بين النطاقات غير القابلة للحل.
git clone https://github.com/dariusztytko/vhosts-sieve.git
pip3 install -r vhosts-sieve/requirements.txt
احصل على قائمة بالنطاقات الفرعية (مثل استخدام Amass)
$ amass enum -v -passive -o domains.txt -d example.com -d example-related.com
استخدم vhosts-sieve.py للعثور على المضيفات الافتراضية
$ python3 vhosts-sieve.py -d domains.txt -o vhosts.txt
Logs dir: None
Max domains to resolve: -1
Max IPs to scan: -1
Max vhost candidates to check: -1
Ports to scan: [80, 443, 8000, 8008, 8080, 8443]
SNI enabled: False
Threads number: 16
Timeout HTTP: 5.0s
Timeout TCP: 3.0s
Verbose: False
User agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Resolving 12 domains...
Scanning 1 IPs...
Finding vhosts (active IPs: 1, vhost candidates: 7)...
Saved results (4 vhosts)
يحتوي ملف الإخراج على المضيفات الافتراضية المكتشفة بالتنسيق التالي
165.22.264.81 80 http False zxcv.example.com 301
165.22.264.81 443 https False zxcv.example.com 200 dev.example.com 200 admin.example.com 401
يحتوي كل سطر على المعلومات التالية:
يمكن تسجيل استجابات المضيفات الافتراضية المكتشفة (خيار -l أو --logs-dir).
لاكتشاف المضيفات الافتراضية، يتم تنفيذ الخطوات التالية:
يتم التحقق من صحة مرشحي المضيفات الافتراضية كما يلي:
يرجى ملاحظة أن رمز حالة الاستجابة لا يؤخذ في الاعتبار. الافتراض الرئيسي هو أن كل شيء بخلاف استجابة المرجع يستحق التحليل بالتفصيل. حتى استجابات 4xx و 5xx.
بالنسبة لبروتوكول HTTPS، قد يكون من المفيد إرسال اسم مرشح المضيف الافتراضي عبر رأس Host و SNI (امتداد TLS). قد يسمح هذا بالمرور عبر خادم وكيل SNI ضعيف التكوين. استخدم خيار --enable-sni لتمكين وضع SNI.
بالنسبة للشبكات الكبيرة التي تحتوي على آلاف النطاقات الفرعية، قد يستغرق فحص جميع مرشحي المضيفات الافتراضية ساعات عديدة. يمكن استخدام الخيارات التالية لتسريع العملية:
بالإضافة إلى ذلك، يوصى باستخدام الخيار -v (الإفصاح) لرؤية النتائج باستمرار.
يرجى الاطلاع على سجل التغييرات