
InfoHound هي أداة OSINT تستخرج كمية كبيرة من البيانات عند تقديم اسم نطاق ويب.
خلال مرحلة الاستطلاع، يبحث المهاجم عن أي معلومات حول هدفه لإنشاء ملف تعريف يساعده لاحقًا في تحديد الطرق المحتملة للوصول إلى المؤسسة. يقوم InfoHound بتنفيذ تقنيات تحليل سلبية (لا تتفاعل مباشرة مع الهدف) باستخدام OSINT لاستخراج كمية كبيرة من البيانات عند إعطاء اسم نطاق ويب. ستسترجع هذه الأداة رسائل البريد الإلكتروني والأشخاص والملفات والنطاقات الفرعية وأسماء المستخدمين وعناوين URL التي سيتم تحليلها لاحقًا لاستخراج معلومات أكثر قيمة.
بالإضافة إلى ذلك، يستفيد InfoHound من مثيل Ollama، مما يمكنه من تسخير قوة LLM (نماذج اللغة الكبيرة). افتراضيًا، يستخدم InfoHound نموذج llama2، وهو نموذج LLM مدرب مسبقًا، لتوليد أوصاف مختصرة لأدوار الأفراد داخل المؤسسة. توفر هذه الوظيفة رؤى قيمة حول الهيكل التنظيمي وتسهل تحديد الموظفين الرئيسيين. علاوة على ذلك، تهدف جهود التطوير المستمرة إلى إضافة ميزات وتحسينات جديدة لإثراء قدرات الأداة في المستقبل.
ملاحظة: لا يتطلب InfoHound أي أجهزة خاصة لتشغيله. ومع ذلك، من المهم مراعاة متطلبات الأجهزة عند استخدام المهام التي تستخدم نموذج اللغة الكبير (LLM). للحصول على معلومات مفصلة حول المتطلبات المحددة لنموذج LLM الذي تنوي استخدامه، يرجى الرجوع إلى وثائق Ollama الرسمية.

git clone https://github.com/Fundacio-i2CAT/InfoHound.git
cd InfoHound/infohound
mv infohound_config.sample.py infohound_config.py
cd ..
docker-compose up -d
يمكنك الآن الوصول إلى InfoHound عن طريق التصفح إلى:
http://localhost:8000/
ملاحظة: يجب إضافة مفاتيح API داخل ملف infohound_config.py
يحتوي InfoHound على نوعين مختلفين من الوحدات: تلك التي تسترجع البيانات وتلك التي تحللها لاستخراج معلومات أكثر صلة.
يتيح لك InfoHound إنشاء وحدات مخصصة، كل ما عليك فعله هو إضافة البرنامج النصي الخاص بك داخل infohound/tool/custom_modules. تمت إضافة وحدة مخصصة واحدة كمثال تستخدم أداة Holehe للتحقق مما إذا كانت رسائل البريد الإلكتروني السابقة مرتبطة بحساب على مواقع مثل Twitter وInstagram وImgur وأكثر من 120 موقعًا آخر.
# استيراد الحزم التي تحتاجها
import trio
import httpx
import requests
from holehe import core
# استيراد نماذج Django التي ستعمل معها
from infohound.models import Emails
MODULE_ID = "findRegisteredSitesHoleheCustomTask" # تعيين معرف الوحدة
MODULE_NAME = "Find sites with Holehe" # تعيين اسم الوحدة
MODULE_DESCRIPTION = "Using Holehe tool, this task will find where an email has been used to create an account. Holehe checks more than 120 sites." # تعيين الوصف
MODULE_TYPE = "Analysis" # تعيين النوع: تحليل أو استرجاع
# هذه هي الوظيفة الوحيدة التي سيتم استدعاؤها بواسطة InfoHound
# قم بتغيير محتواها وإنشاء وظائف أخرى إذا لزم الأمر
def custom_task(domain_id):
trio.run(findRegisteredSitesHolehe, domain_id)
async def findRegisteredSitesHolehe(domain_id):
queryset = Emails.objects.filter(domain_id=domain_id)
for entry in queryset.iterator():
out = []
email = entry.email
modules = core.import_submodules("holehe.modules")
websites = core.get_functions(modules)
client = httpx.AsyncClient()
for website in websites:
await core.launch_module(website, email, client, out)
print(out)
await client.aclose()
services = []
for item in out:
if item["exists"]:
services.append(item["name"])
entry.registered_services = services
entry.save()

هل ترغب في إنشاء رسم بياني مرئي للنتائج؟ يمكنك تصدير تحليل النطاق بالكامل إلى ملف GraphML وفتحه باستخدام yED أو Gephi أو أي أداة من اختيارك. يقوم حاليًا بتصدير الملفات والأشخاص ورسائل البريد الإلكتروني والملفات الشخصية الاجتماعية والمواقع المسجلة وأسماء المستخدمين. لا يتم تضمين عناوين URL والنطاقات الفرعية بسبب كمية النتائج.

هل ترغب في المتابعة باستخدام أدوات مثل Maltego لتحقيقاتك الموسعة؟ يمكنك تصدير تحليل النطاق بالكامل (بما في ذلك الملفات والأفراد ورسائل البريد الإلكتروني والملفات الشخصية الاجتماعية والمواقع المسجلة وأسماء المستخدمين) إلى ملف متوافق مع Maltego (CSV) وفتحه هناك. ستجد ملف تكوين تعيين أعمدة Maltego (maltego_mapping.mtz) في الدليل الجذر للمشروع. تعرف على المزيد حول الاستيراد إلى Maltego
تم تطوير هذا الكود بواسطة Fundació Privada Internet i Innovació Digital a Catalunya (i2CAT).
i2CAT هو مركز أبحاث وابتكار غير ربحي يعزز المعرفة القائمة على المهام لحل التحديات التجارية، والمشاركة في إنشاء حلول ذات تأثير تحويلي، وتمكين المواطنين من خلال الابتكار الاجتماعي الرقمي المفتوح والتشاركي ذي الانتشار الإقليمي، وتعزيز المبادرات الرائدة والاستراتيجية.
تهدف i2CAT إلى نقل نتائج المشاريع البحثية إلى الشركات الخاصة لخلق تأثير اجتماعي واقتصادي من خلال الترخيص الخارجي للملكية الفكرية وإنشاء الشركات المنبثقة.
اعثر على مزيد من المعلومات حول مشاريع i2CAT وحقوق الملكية الفكرية على https://i2cat.net/tech-transfer/
هذا الكود مرخص بموجب شروط AGPLv3. يمكن العثور على معلومات حول الترخيص على الرابط.
إذا وجدت أن هذا الترخيص لا يتناسب مع متطلباتك فيما يتعلق باستخدام أو توزيع أو إعادة توزيع الكود الخاص بنا لعمل محدد، فلا تتردد في الاتصال بمديري الملكية الفكرية في i2CAT على العنوان التالي: [email protected]
| الاسم | الوصف |
|---|
| الحصول على معلومات Whois | الحصول على معلومات ذات صلة من سجل Whois. |
| الحصول على سجلات DNS | هذه المهمة تستعلم عن DNS. |
| الحصول على النطاقات الفرعية | تستخدم هذه المهمة واجهة برمجة تطبيقات Alienvault OTX وCRT.sh وHackerTarget كمصادر بيانات لاكتشاف النطاقات الفرعية المخزنة مؤقتًا. |
| الحصول على النطاقات الفرعية من عناوين URL | بمجرد تنفيذ بعض المهام، سيحتوي جدول عناوين URL على العديد من الإدخالات. ستتحقق هذه المهمة من جميع عناوين URL للعثور على نطاقات فرعية جديدة. |
| الحصول على عناوين URL | يبحث عن جميع عناوين URL المخزنة مؤقتًا بواسطة Wayback Machine ويحفظها في قاعدة البيانات. سيساعد هذا لاحقًا في اكتشاف كيانات بيانات أخرى مثل الملفات أو النطاقات الفرعية. |
| الحصول على الملفات من عناوين URL | يتنقل عبر جدول قاعدة البيانات الخاص بعناوين URL للعثور على الملفات وتخزينها في جدول قاعدة البيانات الخاص بالملفات لتحليلها لاحقًا. الملفات التي سيتم استردادها هي: doc, docx, ppt, pptx, pps, ppsx, xls, xlsx, odt, ods, odg, odp, sxw, sxc, sxi, pdf, wpd, svg, indd, rdp, ica, zip, rar |
| البحث عن البريد الإلكتروني | يبحث عن رسائل البريد الإلكتروني باستخدام استعلامات Google وBing وقواعد البيانات المسربة. |
| العثور على الأشخاص من رسائل البريد الإلكتروني | بمجرد العثور على بعض رسائل البريد الإلكتروني، قد يكون من المفيد اكتشاف الشخص الذي يقف وراءها. كما يعثر على أسماء المستخدمين لهؤلاء الأشخاص. |
| البحث عن رسائل البريد الإلكتروني من عناوين URL | في بعض الأحيان، قد تحتوي عناوين URL المكتشفة على معلومات حساسة. تسترجع هذه المهمة جميع رسائل البريد الإلكتروني من مسارات URL. |
| تنفيذ استعلامات Dorks | سيقوم بتنفيذ استعلامات dorks المحددة في مجلد dorks. تذكر تجميع الاستعلامات حسب الفئات (اسم الملف) لفهم أهدافها. |
| البحث عن رسائل البريد الإلكتروني من Dorks | بشكل افتراضي، يحتوي InfoHound على بعض استعلامات dorks المحددة لاكتشاف رسائل البريد الإلكتروني. ستبحث هذه المهمة عنها في النتائج التي تم الحصول عليها من تنفيذ dork. |
| العثور على الأشخاص من Google | يستخدم واجهة برمجة تطبيقات Google JSON للعثور على الأشخاص الذين يعملون في الشركة المرتبطة بالنطاق |
| الاسم | الوصف |
|---|
| التحقق من إمكانية الاستيلاء على النطاقات الفرعية | يقوم ببعض الفحوصات لتحديد ما إذا كان يمكن الاستيلاء على نطاق فرعي. |
| التحقق من إمكانية تزوير النطاق | يتحقق مما إذا كان يمكن تزوير نطاق من رسائل البريد الإلكتروني التي اكتشفها InfoHound. يمكن استخدام هذا من قبل المهاجمين لانتحال شخصية شخص ما وإرسال رسائل بريد إلكتروني باسمه/ها. |
| الحصول على الملفات الشخصية من أسماء المستخدمين | تستخدم هذه المهمة أسماء المستخدمين المكتشفة لكل شخص للعثور على ملفات شخصية من الخدمات أو الشبكات الاجتماعية التي يوجد بها اسم المستخدم هذا. يتم ذلك باستخدام أداة Maigret. تجدر الإشارة إلى أنه على الرغم من العثور على ملف شخصي بنفس اسم المستخدم، فإنه لا يعني بالضرورة أنه ينتمي إلى الشخص الذي يتم تحليله. |
| تنزيل جميع الملفات | بمجرد تخزين الملفات في جدول قاعدة بيانات الملفات، ستقوم هذه المهمة بتنزيلها في مجلد "download_files". |
| الحصول على البيانات الوصفية | باستخدام exiftool، ستستخرج هذه المهمة جميع البيانات الوصفية من الملفات التي تم تنزيلها وحفظها في قاعدة البيانات. |
| الحصول على رسائل البريد الإلكتروني من البيانات الوصفية | نظرًا لأن بعض البيانات الوصفية قد تحتوي على رسائل بريد إلكتروني، ستسترجع هذه المهمة جميعها وتحفظها في قاعدة البيانات. |
| الحصول على رسائل البريد الإلكتروني من محتوى الملفات | عادةً، قد يتم تضمين رسائل البريد الإلكتروني في ملفات الشركة، لذا ستسترجع هذه المهمة جميع رسائل البريد الإلكتروني من محتوى الملفات التي تم تنزيلها. |
| العثور على الخدمات المسجلة باستخدام رسائل البريد الإلكتروني | من الممكن العثور على الخدمات أو الشبكات الاجتماعية التي تم استخدام بريد إلكتروني لإنشاء حساب عليها. ستتحقق هذه المهمة مما إذا كان البريد الإلكتروني الذي اكتشفه InfoHound لديه حساب في Twitter, Adobe, Facebook, Imgur, Mewe, Parler, Rumble, Snapchat, Wordpress, و/أو Duolingo. |
| التحقق من الاختراقات | تتحقق هذه المهمة من خدمة Firefox Monitor لمعرفة ما إذا تم العثور على بريد إلكتروني في اختراق بيانات. على الرغم من أنها خدمة مجانية، إلا أن لديها حدًا أقصى قدره 10 استعلامات في اليوم. إذا تم تعيين مفتاح API لـ Leak-Lookup، فسيتم التحقق منه أيضًا. |
| تحليل الملفات الشخصية المدعوم بالذكاء الاصطناعي | يمكنك استخدام مهمة تحليل الملفات الشخصية لاستخدام أداة تعمل بالذكاء الاصطناعي تفحص البيانات الوصفية وتنشئ وصفًا لك. |
| الحصول على كلمات المرور المسربة | باستخدام خدمة Proxy Nova المجانية، يمكن لـ InfoHound اكتشاف وعرض كلمات المرور من أسماء المستخدمين التي تم العثور عليها والتي تم تسريبها في الماضي. |