
ReconHound هي أداة استطلاع ويب مبنية على بايثون، مصممة لمختبري الاختراق، وصائدي الجوائز الأمنية (bug bounty hunters)، والمخترقين الأخلاقيين. تدعم تعداد الأدلة والملفات، تعداد النطاقات الفرعية، الفَزّينغ (fuzzing)، واكتشاف الاستضافة الافتراضية (vhost).
ReconHound هي أداة استطلاع ويب مبنية بلغة Python، مصممة لمختبر الاختراق، وصيادي الثغرات، والقراصنة الأخلاقيين. تساعد في اكتشاف المسارات والملفات والنطاقات الفرعية ومعاملات الاستعلام والمضيفات الافتراضية ونقاط النهاية القابلة للفحص — مما يجعلها حلاً متعدد الاستخدامات للاستطلاع العميق للويب.
مسح متعدد الخيوط لتعداد ويب عالي السرعة
يدعم:
اكتشاف الدلائل والملفات
تعداد النطاقات الفرعية
كشف المضيفات الافتراضية عبر رأس Host
فحص معاملات الاستعلام
الفحص في أي مكان في عنوان URL باستخدام العنصر النائب FUZZ المخصص
حفظ النتائج بتنسيق JSON
التعامل بلطف مع الانقطاعات وحفظ النتائج الجزئية
يجب استخدام ReconHound بمسؤولية وقانونية. الاستخدام غير المصرح به لهذه الأداة لمسح أو فحص أو اختبار مواقع الويب دون إذن صريح هو عمل غير قانوني وغير أخلاقي. المؤلف غير مسؤول عن أي إساءة استخدام أو عواقب قانونية ناتجة عن استخدام هذه الأداة.
1. استنساخ المستودع:
git clone https://gitlab.com/s_r_e_e_r_a_j/ReconHound.git
2. الانتقال إلى دليل ReconHound:
cd ReconHound
3. تثبيت التبعيات:
pip3 install -r requirements.txt
ملاحظة لمستخدمي Kali وParrot وUbuntu 23.04+ وArch Linux:
إذا رأيت خطأً مثل:
error: externally-managed-environment
فاستخدم:
pip3 install -r requirements.txt --break-system-packages
4. تشغيل النص install.py للتثبيت:
sudo python3 install.py
ثم اكتب y للتثبيت
5. تشغيل الأداة
reconhound [options]
dir – تعداد الدلائل والملفات
مثال:
reconhound dir -u https://example.com -w /path/to/wordlist/wordlist.txt -e .php,.html -t 20 -o /path/to/save/dir_results.json
sub – تعداد النطاقات الفرعية
مثال:
reconhound sub -d example.com -w /path/to/wordlist/wordlist.txt -t 30 -o /path/to/save/sub_results.json
vhost – اكتشاف المضيفات الافتراضية
مثال:
reconhound vhost -i 192.0.2.1 --domain example.com -w /path/to/wordlist/wordlist.txt -t 25 -o /path/to/save/vhost_results.json
fuzz – فحص معاملات الاستعلام
مثال:
reconhound fuzz -u "https://example.com/page.php?id=FUZZ" -p id -w /path/to/wordlist/wordlist.txt -t 20 -o /path/to/save/fuzz_results.json
reconhound fuzz -u "https://example.com/login?username=admin&password=FUZZ" -p password -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzz_results.json
fuzzany – الفحص في أي مكان في عنوان URL
مثال:
reconhound fuzzany -u "https://example.com/FUZZ/login" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
reconhound fuzzany -u "https://example.com?FUZZ=admin" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
reconhound fuzzany -u "https://example.com/login?username=admin&password=FUZZ" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
وضع dir
reconhound dir --help
وضع sub
reconhound sub --help
وضع vhost
reconhound vhost --help
وضع fuzz
reconhound fuzz --help
وضع fuzzany
reconhound fuzzany --help
تشغيل النص install.py
sudo python3 install.py
ثم اكتب n لإلغاء التثبيت
هذا المشروع مرخص بموجب رخصة MIT
| الخيار | الوصف |
|---|
-u, --url | عنوان URL الهدف (مثل https://example.com) |
-w, --wordlist | مسار قائمة كلمات الدليل/الملف |
-e, --extensions | امتدادات الملفات مفصولة بفاصلة (مثل .php,.html,.js)(اختياري) |
-t, --threads | عدد الخيوط المستخدمة (الافتراضي: 10)(اختياري) |
-o, --output | ملف لحفظ نتائج الإخراج (تنسيق JSON، out.json)(اختياري) |
| الخيار | الوصف |
|---|
-d, --domain | النطاق الهدف (مثل example.com) |
-w, --wordlist | مسار قائمة كلمات النطاقات الفرعية |
-t, --threads | عدد الخيوط المستخدمة، الافتراضي (10)(اختياري) |
-o, --output | ملف لحفظ نتائج الإخراج (تنسيق JSON، out.json)(اختياري) |
| الخيار | الوصف |
|---|
-i, --ip | عنوان IP الهدف (مثل 192.0.2.1)(IP موقع الويب الهدف) |
-d, --domain | اسم النطاق الحقيقي المستخدم في رأس Host (نطاق موقع الويب الهدف)(مثل "example.com") |
-w, --wordlist | قائمة كلمات المضيفات الافتراضية (مثل admin, dev, test) |
-t, --threads | عدد الخيوط المستخدمة، الافتراضي: 10 (اختياري) |
-o, --output | ملف لحفظ نتائج الإخراج (تنسيق JSON، out.json)(اختياري) |
| الخيار | الوصف |
|---|
-u, --url | عنوان URL الهدف مع FUZZ في المعامل (مثل ?id=FUZZ) |
-p, --param | اسم المعامل المراد فحصه (مثل id) |
-w, --wordlist | قائمة كلمات الحمولات لحقنها في المعامل |
-t, --threads | عدد الخيوط المستخدمة، الافتراضي: 10 (اختياري) |
-o, --output | ملف لحفظ نتائج الإخراج (تنسيق JSON، out.json)(اختياري) |
| الخيار | الوصف |
|---|
-u, --url | عنوان URL يحتوي على FUZZ في المسار أو الاستعلام (مثل /FUZZ/login) |
-w, --wordlist | قائمة كلمات لاستبدال FUZZ |
-t, --threads | عدد الخيوط المستخدمة، الافتراضي: 10(اختياري) |
-o, --output | ملف لحفظ نتائج الإخراج (تنسيق JSON، out.json)(اختياري) |