
يولد قوائم بالمضيفين النشطين وعناوين URL للاستهداف، وأتمتة استخدام MassDNS وMasscan وnmap لتصفية المضيفين غير القابلين للوصول وجمع معلومات الخدمات.
ينشئ قوائم بالمضيفات الحية وعناوين URL للاستهداف، مع أتمتة استخدام أدوات Massdns وMasscan وnmap لتصفية المضيفات غير القابلة للوصول.
عند توفير ملف إدخال بأسماء النطاقات، يقوم هذا السكريبت بأتمتة استخدام MassDNS لتصفية المضيفات غير القابلة للحل، ثم تمرير النتائج إلى Masscan لتأكيد إمكانية الوصول إلى المضيفات والمنافذ التي تعمل عليها. بعد ذلك، يقوم السكريبت بإنشاء قائمة بعناوين URL كاملة لاستخدامها في الاستهداف الإضافي (مثل تمريرها إلى أدوات مثل gobuster أو dirsearch، أو إجراء طلبات HTTP)، وقائمة بأسماء النطاقات القابلة للوصول، وقائمة بعناوين IP القابلة للوصول. كخطوة اختيارية أخيرة، يمكنك تشغيل فحص إصدار nmap على قائمة المضيفات المختزلة هذه، للتحقق من أن المضيفات التي تم العثور عليها لا تزال نشطة، وجمع معلومات الخدمات من منافذها المفتوحة.
هذا السكريبت مفيد بشكل خاص لمجموعات النطاقات الكبيرة، مثل تعدادات النطاقات الفرعية التي تم جمعها من نطاق جذعي يحتوي على آلاف النطاقات الفرعية. مع هذه القوائم الكبيرة، سيستغرق فحص nmap وقتًا طويلاً. الهدف هنا هو أولاً استخدام MassDNS الأقل دقة ولكنه الأسرع لتقليل حجم قائمة الإدخال بسرعة عن طريق إزالة النطاقات غير القابلة للحل. بعد ذلك، سيتمكن Masscan من أخذ المخرجات من MassDNS وتأكيد إمكانية الوصول إلى المضيفات والمنافذ التي تعمل عليها. ثم يقوم السكريبت بتحليل هذه النتائج وإنشاء قوائم بالمضيفات الحية التي تم اكتشافها.
الآن، يجب أن تكون قائمة المضيفات قد تقلصت بما يكفي لتكون مناسبة لمزيد من الفحص/الاختبار. إذا كنت ترغب في المضي قدمًا خطوة أخرى، يمكنك توجيه السكريبت لتشغيل فحص nmap على قائمة المضيفات القابلة للوصول، والذي سيستغرق وقتًا معقولاً مع القائمة الأقصر للمضيفات. بعد تشغيل nmap، سيتم تصفية أي نتائج إيجابية خاطئة من Masscan. سيتم تخزين مخرجات nmap الأولية بتنسيق XML القياسي لـ nmap، وستتم إضافة المعلومات الإضافية من اكتشاف الإصدار إلى قاعدة بيانات SQLite.

إذا كنت تستخدم خيار فحص nmap، فهذه الأداة تفترض أن nmap مثبت لديك بالفعل
ملاحظة: تشغيل سكريبت التثبيت ضروري فقط إذا لم يكن لديك بالفعل MassDNS وMasscan مثبتين، أو إذا كنت ترغب في إعادة تثبيتهما داخل هذا المستودع. إذا لم تقم بتشغيل السكريبت، يمكنك توفير المسارات إلى الملفات التنفيذية كوسائط. كما يتوقع السكريبت أن قائمة المحللين المضمنة مع MassDNS موجودة في {massDNS_directory}/lists/resolvers.txt.
git clone https://github.com/allyomalley/LiveTargetsFinder.git
cd LiveTargetsFinder
sudo pip3 install -r requirements.txt
(اختياري)
chmod +x install_deps.sh
./install_deps.sh
إذا لم يكن لديك بالفعل MassDNS وMasscan مثبتين، وتفضل تثبيتهما بنفسك، راجع الوثائق للحصول على الإرشادات:
لقد اختبرت هذا السكريبت فقط على macOS و Linux - يجب أن يعمل سكريبت بايثون نفسه على نظام Windows، لكن أعتقد أن تثبيت MassDNS وMasscan سيختلف.
python3 liveTargetsFinder.py [domainList] [options]
-s (أو --hashmap-size) لأسباب تتعلق بالأداء - من المحتمل أن تتمكن من زيادته.-c 25 -o J -r ./massdns/lists/resolvers.txt -s 100 -w massdnsOutput -t A targetHosts--max-rate لـ Masscan - من المحتمل أن ترغب في تعديله.
-iL ipFile -oD masscanOutput --open-only --max-rate 5000 -p80,443 --max-retries 10--script http-server-header.nse,http-devframework.nse,http-headers -sV -T4 -p80,443 -oX {output.xml}إذا قمت بتشغيل سكريبت التثبيت:
python3 liveTargetsFinder.py --target-list victim_domains.txt
إذا لم تقم بتشغيل سكريبت التثبيت:
python3 liveTargetsFinder.py --target-list victim_domains.txt --massdns-path ../massdns/bin/massdns --masscan-path ../masscan/bin/masscan
تنفيذ فحص nmap والكتابة إلى/الإضافة إلى مسار قاعدة البيانات الافتراضي (liveTargetsFinder.sqlite3)
python3 liveTargetsFinder.py --target-list victim_domains.txt --nmap
تنفيذ فحص nmap والكتابة إلى/الإضافة إلى قاعدة البيانات المحددة
python3 liveTargetsFinder.py --target-list victim_domains.txt --nmap --db-path serviceinfo_victim.sqlite3
الإدخال: victimDomains.txt
| العلم | الوصف | القيمة الافتراضية | مطلوب |
|---|
--target-list | ملف الإدخال الذي يحتوي على قائمة النطاقات، مثل google.com | نعم | |
--massdns-path | المسار إلى ملف MassDNS التنفيذي، إذا كان غير افتراضي | ./massdns/bin/massdns | لا |
--masscan-path | المسار إلى ملف Masscan التنفيذي، إذا كان غير افتراضي | ./masscan/bin/masscan | لا |
--nmap | تشغيل فحص اكتشاف إصدار nmap على المضيفات الحية التي تم جمعها | معطل | لا |
--db-path | إذا كنت تستخدم خيار --nmap، قم بتوفير المسار إلى قاعدة البيانات التي تريد الإضافة إليها (سيتم إنشاؤها إذا لم تكن موجودة) | output/liveTargetsFinder.sqlite3 | لا |
| الملف | الوصف | أمثلة |
|---|
| output/victimDomains_targetUrls.txt | قائمة بعناوين URL الحية والقابلة للوصول | https://github.com, http://github.com |
| output/victimDomains_domains_alive.txt | قائمة بأسماء النطاقات الحية | github.com, google.com |
| output/victimDomains_ips_alive.txt | قائمة بعناوين IP الحية | 10.1.0.200, 52.3.1.166 |
| مسار قاعدة البيانات المقدم أو الافتراضي | قاعدة بيانات SQLite تخزن المضيفات الحية ومعلومات حول الخدمات التي تعمل عليها | |
| output/victimDomains_massdns.txt | المخرجات الأولية من MassDNS، بتنسيق ndjson | |
| output/victimDomains_masscan.txt | المخرجات الأولية من Masscan، بتنسيق ndjson | |
| output/victimDomains_nmap.txt | المخرجات الأولية من nmap، بتنسيق XML |