
OSINT Omnibus (إصدار تجريبي)
يُعرف Omnibus بأنه مجلد يحتوي على العديد من الروايات أو العناصر الأخرى المنشورة سابقًا بشكل منفصل، وهذا هو بالضبط ما يهدف إليه مشروع InQuest Omnibus لجمع المعلومات الاستخباراتية مفتوحة المصدر، والبحث، وإدارة القطع الأثرية.
من خلال توفير تطبيق سطر أوامر تفاعلي سهل الاستخدام، يمكن للمستخدمين إنشاء جلسات للتحقيق في مختلف القطع الأثرية مثل عناوين IP، أسماء النطاقات، عناوين البريد الإلكتروني، أسماء المستخدمين، تجزئات الملفات، عناوين البيتكوين، والمزيد مع استمرارنا في التوسع.
استلهم هذا المشروع من العمالقة الذين سبقوه مثل SpiderFoot وHarpoon وDataSploit. الشكر الجزيل لهؤلاء المؤلفين الرائعين لمساهمتهم في عالم المصادر المفتوحة.
التطبيق كُتب بلغة Python 2.7 وتم اختباره بنجاح على بيئات OSX وUbuntu 16.04.
هذه نسخة بيتا من التطبيق النهائي، وبالتالي قد توجد بعض الأخطاء أو الغرابة أثناء الاستخدام. في الغالب، يعمل Omnibus بشكل كامل ويمكن استخدامه لبدء التحقيق في المصادر المفتوحة فورًا.
تم بناء Omnibus بطريقة معيارية تسمح بإضافة وحدات مصدر بيانات OSINT ووحدات الاستيراد/التصدير بسهولة. يتم تضمين كل وحدة حسب الفئة في دليل واحد، وبإضافة بضعة أسطر من التعليمات البرمجية، يمكن أن تكون وحدتك التالية!
مع استمرار نمو الويكي، سيكون لدينا أمثلة كاملة حول كيفية كتابة إضافات مخصصة.
إذا صادفت أي أخطاء أو مشكلات أخرى، يرجى إنشاء Issue و/أو Pull Request. كما نرحب بدعم المجتمع في إنشاء المزيد من الوحدات وتوسيع حالات استخدام Omnibus. الفروع وطلبات السحب للميزات الجديدة مرحب بها أكثر!
يعمل ملف README هذا كنظرة عامة سريعة على Omnibus وميزاته. التوثيق الكامل متاح في مجلد 'docs' في هذا المستودع.
قبل أن نبدأ، سنحتاج إلى تغطية بعض المصطلحات التي يستخدمها Omnibus.
new أو عن طريق اكتشافها من خلال تنفيذ الوحدةبدء تشغيل Omnibus للتحقيق هو أمر بسيط مثل استنساخ مستودع GitHub هذا، وتثبيت متطلبات Python باستخدام pip install -r requirements.txt وتشغيل python omnibus-cli.py.
شيل أومنبس - بدء التشغيل الرئيسي

للإشارة البصرية لواجهة سطر الأوامر، كما هو موضح أعلاه، تظهر وحدة تحكم Omnibus بعد بدء جلسة جديدة، وتمت إضافة قطعتين أثريتين إلى الجلسة، ويتم عرض قائمة المساعدة help.
يجب عليك تعيين أي مفاتيح API ترغب في استخدامها داخل الوحدات في ملف omnibus/etc/apikeys.json.
هذا الملف هو مستند JSON يحتوي على أماكن شغل لجميع الخدمات التي تتطلب مفاتيح API، ويتم الوصول إليه بواسطة Omnibus على أساس كل وحدة لاسترداد مفتاح API المحدد الذي تحتاجه الوحدة للتنفيذ.
تجدر الإشارة إلى أن معظم الخدمات التي تتطلب مفاتيح API لديها حسابات ومفاتيح API مجانية. قد تحتوي بعض الحسابات المجانية على حدود موارد أقل، لكن هذا لم يكن مشكلة خلال التحقيقات اليومية الصغيرة أو اختبار التطبيق.
نصيحة مفيدة: استخدم الأمر cat apikeys لعرض المفاتيح التي قمت بتخزينها بالفعل.
إذا كانت الوحدات تفشل أو لا تعيد نتائج، تحقق هنا أولاً للتأكد من حفظ مفتاح API الخاص بك بشكل صحيح.
عند تشغيل واجهة سطر الأوامر لأول مرة، ستستقبلك قائمة مساعدة تحتوي على بعض المعلومات الأساسية.
يحاول Omnibus استخدام أوامر تحاكي بعض أوامر Linux الشائعة للألفة وسهولة الاستخدام. على سبيل المثال، الأمر cat لعرض معلومات عن قطعة أثرية، rm لإزالة قطعة أثرية من قاعدة البيانات، ls لعرض القطع الأثرية في الجلسة الحالية، ودعم إعادة توجيه الإخراج لأي أمر باستخدام الحرف >.
كمثال على إعادة توجيه الإخراج، إذا كنت ترغب في استرداد تفاصيل قطعة أثرية مسماة "inquest.net" وحفظها في ملف JSON على القرص المحلي، يمكنك ببساطة تشغيل الأمر:
cat inquest.net > inquest-report.json وسيكون هناك!
هذه الميزة تعمل أيضًا مع مسارات الملفات الكاملة بدلاً من المسارات النسبية.
الأوامر عالية المستوى المستخدمة في Omnibus غالبًا هي:
session
new <اسم القطعة الأثرية>
modules
open <مسار الملف>
ls
rm
wipe
cat <اسم القطعة الأثرية | معرف الجلسة>
<اسم الوحدة> <اسم القطعة الأثرية | معرف الجلسة>
<اسم الآلة> <اسم القطعة الأثرية | معرف الجلسة>
إذا كنت بحاجة إلى مرجع سريع حول الأوامر المختلفة المتاحة لمناطق مختلفة من التطبيق، فهناك قوائم مساعدة فرعية لهذا الغرض بالضبط. استخدام هذه الأوامر سيعرض فقط الأوامر المتاحة ذات الصلة بمنطقة معينة:
general
artifacts
sessions
modules
تبدأ معظم تحقيقات الأمن السيبراني بمؤشر تقني واحد أو أكثر، مثل عنوان IP أو تجزئة ملف أو عنوان بريد إلكتروني. بعد البحث والتحليل، تبدأ العلاقات في التكون ويمكنك التنقل عبر نقاط البيانات المترابطة. تسمى نقاط البيانات هذه بالقطع الأثرية داخل Omnibus وتمثل أي عنصر ترغب في التحقيق فيه.
يمكن أن تكون القطع الأثرية من الأنواع التالية:
الأمر "new" متبوعًا بقطعة أثرية سينشئ تلك القطعة الأثرية داخل جلسة Omnibus الخاصة بك ويخزن سجلًا للقطعة الأثرية في MongoDB. يحمل هذا السجل اسم القطعة الأثرية ونوعها ونوعها الفرعي ونتائج الوحدة ومصدرها وملاحظاتها وعلاماتها ومعلومات الأبناء (حسب الحاجة) ووقت الإنشاء. في كل مرة تقوم فيها بتشغيل وحدة ضد قطعة أثرية تم إنشاؤها أو تخزينها، سيتم تحديث مستند قاعدة البيانات ليعكس المعلومات المكتشفة حديثًا.
لإنشاء قطعة أثرية جديدة وإضافتها إلى MongoDB للتتبع، قم بتشغيل الأمر new <اسم القطعة الأثرية>. على سبيل المثال، للبدء في التحقيق في النطاق inquest.net، يمكنك تشغيل new inquest.net.
سيحدد Omnibus تلقائيًا نوع القطعة الأثرية ويضمن تنفيذ الوحدات من ذلك النوع فقط ضد القطعة الأثرية. إذا حاولت تشغيل قطعة أثرية ضد وحدة لا يمكنها دعم نوع القطعة الأثرية، سيتم إعلامك برسالة تحذير تسرد الأنواع المقبولة.