
مشروع OSINT. جمع المعلومات من البريد الإلكتروني. تجميع. توصيف. خط زمني.
الوصف | التثبيت | الموقع | الوحدات | المشكلات | الدعم
iKy هي أداة OSINT تجمع المعلومات من عنوان بريد إلكتروني أو محددات أخرى وتعرض النتائج في واجهة مرئية.
git clone https://gitlab.com/kennbroorg/iKy.git
cd iKy
just build
just up
افتح متصفحك على http://localhost:4300
لإيقاف جميع الخدمات:
just down
just upيبدأbackendوiky-frontendوredis. لا يتم تشغيل أي خدمات أخرى بشكل افتراضي.
إذا لم تتمكن من تشغيل Docker، يمكن تشغيل iKy محلياً: Caddy يخدم الواجهة الأمامية المجمعة مسبقاً و Redis + Celery + Uvicorn تعمل كعمليات محلية. يتطلب redis-server و Python 3.12 و curl و tar على المضيف (يتم تنزيل Caddy تلقائياً).
just setup # إنشاء البيئة الافتراضية
just up-native # تثبيت التبعيات، تنزيل Caddy + الواجهة الأمامية، بدء كل شيء
افتح متصفحك على http://localhost:4300. أوقف التشغيل بـ Ctrl-C أو just down-native.
يتم سحب الواجهة الأمامية من أحدث إصدار على GitHub — لا حاجة لبناء Node. لا يتم تشغيل
torفي الوضع المحلي؛ فقط وحدةdarkwebتحتاجه.
يقوم iKy بتوجيه 26 وحدة من خلال backend/module_registry.py:
بمجرد تحميل التطبيق في المتصفح، أدخل مفاتيح API الخاصة بك في لوحة الإعدادات. فيما يلي الجدول الكامل للحقول من backend/factories/apikeys_default.json:
واجهات API المميزة بـ 🍪 تستخدم كوكيز جلسة المتصفح؛ والباقي يستخدم رموز الخدمة.
تتطلب بعض الوحدات (LinkedIn, Twitter, TikTok) كوكيز جلسة من متصفحك. يتم تخزين الكوكيز في backend/cookies/ (مركبة في الحاوية كـ /app/cookies) وتبقى عبر عمليات إعادة التشغيل. هناك طريقتان لتحميلها، كلاهما عبر just.
الكوكيز هي رموز جلسة شخصية: لا تشاركها أو تدرجها في المستودع (ملف
backend/cookies/مستثنى في git).
قم بتصدير كوكيز الموقع باستخدام إضافة مثل Cookie-Editor إلى ملف JSON واستيراده:
just cookies-import linkedin ~/Downloads/linkedin_cookies.json
يستخرج الكوكيز مباشرة من متصفحك المحلي. أغلق المتصفح قبل التشغيل (المتصفح المفتوح يقفل قاعدة بيانات الكوكيز الخاصة به):
# جرب جميع المتصفحات المثبتة (firefox, chrome, brave, edge)
just cookies-grab linkedin linkedin.com
# أو متصفح محدد
just cookies-grab linkedin linkedin.com brave
يبلغ الأمر، متصفحاً بمتصفح، بما استطاع قراءته وما لم يستطع، ويكتب الملف فقط إذا وجد الكوكيز التي تحتاجها الوحدة. على سبيل المثال، LinkedIn تتطلب li_at و JSESSIONID.
تنتهي صلاحية الكوكيز بشكل دوري (كوكيز LinkedIn تستمر من شهر إلى 3 أشهر). عندما تتوقف وحدة عن المصادقة، قم بتشغيل الأمر مرة أخرى.
يستخدم سير العمل للتطوير بيئة افتراضية للفحص/خطافات pre-commit و Docker (أو التدفق المحلي just up-native) لبناء وتشغيل التطبيق.
قم بتثبيت just، ثم:
just setup
source .venv/bin/activate
ينشئ هذا بيئة افتراضية Python مع pre-commit و ruff، ويقوم بتثبيت خطافات git.
اسحب أحدث التغييرات وأعد بناء صور Docker:
git pull
just rebuild
للحفاظ على مفاتيح API الخاصة بك عبر التحديثات، استخدم خيارات التصدير/الاستيراد في قائمة مفاتيح API بالواجهة الرسومية.
سواء كنت تستخدم هذا المشروع، أو تعلمت منه شيئاً، أو ببساطة أعجبك، يرجى النظر في دعمه عن طريق شراء قهوة لي، حتى أتمكن من تخصيص المزيد من الوقت للمشاريع مفتوحة المصدر مثل هذا.
أي شخص يساهم أو ساهم في المشروع، بما في ذلك أنا، ليس مسؤولاً عن استخدام الأداة (لا الاستخدام القانوني ولا الاستخدام غير القانوني، ولا "الاستخدام الآخر").
ضع في اعتبارك أن هذه البرمجيات كُتبت في البداية كمزحة، ثم لأغراض تعليمية (لتعليم أنفسنا)، والآن الهدف هو التعاون مع المجتمع من خلال صنع برمجيات حرة عالية الجودة، وبينما الجودة ليست ممتازة (أحياناً ليست جيدة حتى) فإننا نسعى لتحقيق التميز.
ضع في اعتبارك أن جميع المعلومات التي يتم جمعها مجانية ومتاحة عبر الإنترنت، الأداة تحاول فقط اكتشافها وجمعها وعرضها. في كثير من الأحيان لا تستطيع الأداة حتى تحقيق هدفها في الاكتشاف والجمع. يرجى تحميل واجهات API اللازمة قبل أن تتذكر والدتي. إذا لم تظهر الأداة حتى مع واجهات API الأشياء "الجميلة" التي تتوقع رؤيتها، جرب بريداً إلكترونياً آخر قبل أن تتذكر والدتي. إذا كنت لا تزال لا ترى الأشياء "الجميلة" التي تتوقع رؤيتها، يمكنك إنشاء مشكلة، أو الاتصال بنا عبر البريد الإلكتروني أو عبر أي من شبكات التواصل الاجتماعي، لكن ضع في اعتبارك أن والدتي ليست المبدعة ولا تساهم في المشروع.
نحن لا نرد أموالك إذا كنت غير راضٍ. أتمنى أن تستمتع باستخدام الأداة بقدر ما نستمتع بصنعها. الجهد كان ولا يزال هائلاً (الوقت، المعرفة، البرمجة، الاختبارات، المراجعات، إلخ) لكننا سنفعلها مرة أخرى. لا تستخدم الأداة إذا لم تستطع قراءة التعليمات و/أو هذا الإخلاء بوضوح.
بالمناسبة، بالنسبة لأولئك الذين يصرون على تذكر والدتي، لقد توفيت منذ سنوات عديدة لكنني أحبها كما لو كانت هنا.
| الخدمة | التقنية | المنفذ |
|---|
| backend | FastAPI 0.115 + Celery 5.6 | 5000 |
| iky-frontend | Angular 21 + nginx | 4300 |
| redis | Redis 7 | 56379 (المضيف) |
| tor | وكيل SOCKS5 (وحدة darkweb) | داخلي |
| الفئة | الوحدات |
|---|
| شبكات التواصل الاجتماعي | twitter, linkedin, instagram, tiktok, mastodon, twitch, reddit |
| الهوية / اسم المستخدم | github, gitlab, keybase, sherlock, socialscan, holehe, usersearch, skype |
| المواعدة / المدفوعات | tinder, venmo |
| الموسيقى | spotify |
| السمعة / وسطاء البيانات | peopledatalabs, emailrep, fullcontact |
| التسريبات / الاختراقات | leaks, leaklookup, darkweb, hudsonrock |
| البحث | search |
| الوحدة | الحالة | الحقل في apikey | طريقة الحصول |
|---|
| 🆗 🍪 | linkedin_cookies (أو القديمة linkedin_li_at / linkedin_JSESSIONID) | just cookies-grab linkedin linkedin.com أو just cookies-import linkedin <ملف> | |
| 🆗 🍪 | twitter_cookies | just cookies-grab twitter x.com | |
| TikTok | 🆗 🍪 | tiktok_cookies | just cookies-grab tiktok tiktok.com |
| PeopleDataLabs | 🆗 | peopledatalabs_key | 🆓 واجهة برمجة مجانية — ويكي |
| Emailrep | 🆗 | emailrep_key | 🆓 واجهة برمجة مجانية — ويكي |
| Leaklookup | 🆗 | leaklookup_key | 🆓 واجهة برمجة مجانية — ويكي |
| Spotify | 🆗 | spotify_client_id / spotify_client_secret | 🆓 واجهة برمجة مجانية — ويكي |
| Twitch | 🆗 | twitch_client_id / twitch_client_secret | 🆓 واجهة برمجة مجانية — ويكي |
| CSE (Google) | 🆗 | cse_api_key / cse_cx | 🆓 واجهة برمجة مجانية — ويكي |
| Brave | 🆗 | brave_key | 🆓 واجهة برمجة مجانية |
| ⚠️ | instagram_user / instagram_pass | قيد المراجعة | |
| Fullcontact | 🛑 | fullcontact_api | متوقفة |
| HaveIBeenPwned | 🛑 | haveibeenpwned_key | متوقفة |
| الوحدة | النطاق | الكوكيز المطلوبة |
|---|
| linkedin.com | li_at, JSESSIONID | |
| x.com | auth_token, ct0 | |
| TikTok | tiktok.com | msToken |
| الأمر | الوصف |
|---|
just build | بناء صور Docker |
just up | بدء جميع الخدمات |
just down | إيقاف جميع الخدمات |
just logs | متابعة سجلات backend (just logs frontend للواجهة الأمامية) |
just ps | عرض الحاويات الجارية |
just shell-backend | فتح شل في حاوية backend |
just lint | تشغيل مدقق ruff وفحص التنسيق |
just fmt | تنسيق تلقائي لرمز Python |
just restart backend | إعادة تشغيل خدمة محددة |
just rebuild | إيقاف، إعادة بناء، وبدء جميع الخدمات |
just clean | إزالة الحاويات، وحدات التخزين، والصور المحلية |
just up-native | بدء iKy محلياً (بدون Docker) |
just down-native | إيقاف الخدمات المحلية |
just up-native-clean | مسح ذاكرة التخزين المؤقت المحلية (Caddy, الواجهة الأمامية, السجلات) |