Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
phishcollector — PhishCollector هو إطار بحثي لجمع وتحليل وتتبع مواقع التصيد الاحتيالي. | Kitploit
أدوات/GitHubGitHub/olizimmermann/phishcollector
الاستخبارات مفتوحة المصدر (OSINT)أدوات التصيدالاستطلاعموجزات ومجمعات التهديداتجمع المعلوماتالتصيد الاحتياليأمن الويباستخبارات التهديداتالأوراق والأبحاثالتعلم والتعليمزاحف الويب
23322منذ 7 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
GitHub
olizimmermann/phishcollector

phishcollector

PhishCollector هو إطار بحثي لجمع وتحليل وتتبع مواقع التصيد الاحتيالي.

عرض المستودع

PhishCollector

PhishCollector هو إطار عمل بحثي لجمع وتحليل وتتبع مواقع التصيد. تم تصميمه عمدًا كنقطة بداية — قواعد الكشف، تواقيع التقنيات، قوائم الكلمات، والإضافات كلها هياكل بيانات نصية بسيطة يُتوقع من الباحثين قراءتها وتوسيعها وتكييفها مع بيئة التهديدات الخاصة بهم.

أرسل رابطًا مشبوهًا، وسيقوم PhishCollector بما يلي:

  • تحميل الصفحة في متصفح Chromium بدون واجهة رسومية (JavaScript مفعّل، وكيل مستخدم عشوائي، إجراءات مضادة للروبوتات)
  • التقاط HTML المكتمل العرض، لقطة شاشة للصفحة كاملة، وكل طلب شبكة
  • تنزيل جميع أصول JavaScript و CSS المرتبطة
  • بصمة الموقع: IP/ASN/جغرافي، شهادة TLS، WHOIS، حزمة التقنيات، تجزئة favicon (متوافقة مع Shodan mmh3)، تحليل النماذج، كشف مؤشرات التصيد
  • الزحف للروابط المكتشفة، مسارات robots.txt، وعناوين URL لخريطة الموقع (اختبار تخميني اختياري بقائمة كلمات)
  • الاستعلام عن URLhaus و/أو VirusTotal لسمعة التهديد
  • تخزين كل شيء في PostgreSQL للبحث عبر المجموعات وتحليل الاتجاهات

جميع النتائج متاحة عبر واجهة برمجة تطبيقات REST، لوحة تحكم ويب، و واجهة سطر أوامر.


لقطات الشاشة

Dashboard

Collection detail


بداية سريعة

cp .env.example .env          # قم بالتكوين (انظر أدناه)
docker compose up --build     # يبدأ تشغيل db + app + frontend
الخدمةالرابط
GUIhttp://localhost:3000
API docshttp://localhost:8000/docs
DBlocalhost:5432

الإعدادات

جميع الإعدادات هي متغيرات بيئية ببادئة PHISH_. انسخ .env.example إلى .env وعدّل.

المتغيرالافتراضيالوصف
PHISH_DATABASE_URLpostgres://…DSN لقاعدة بيانات PostgreSQL
PHISH_API_KEY(فارغ)إذا تم تعيينه، تتطلب جميع الطلبات X-API-Key: <قيمة>
PHISH_DATA_DIR/dataدليل التخزين للقطات الشاشة، HTML، الأصول
PHISH_BROWSER_TIMEOUT30000مهلة تحميل الصفحة بالمللي ثانية
PHISH_REQUEST_TIMEOUT15مهلة طلب HTTP الفرعي بالثواني
PHISH_MAX_SPIDER_PAGES50الحد الأقصى لعناوين URL التي يزورها الزاحف لكل مهمة
PHISH_MAX_ASSET_SIZE10485760الحد الأقصى لحجم ملف JS/CSS للتخزين (بايت)
PHISH_PROXY_URL(فارغ)وكيل خارجي — انظر أدناه
PHISH_PROXY_SSL_VERIFYtrueاضبط false للوكلاء المعترضين — انظر أدناه
PHISH_URLHAUS_ENABLEDfalseتفعيل فحص سمعة URLhaus
PHISH_VIRUSTOTAL_API_KEY(فارغ)مفتاح API لـ VirusTotal الإصدار 3 (اتركه فارغًا لتعطيله)

إعداد الوكيل

توجيه كل حركة المرور الصادرة عبر وكيل يبقي عنوان IP للمحلل مخفيًا عن خادم التصيد.

Tor (إخفاء الهوية)

PHISH_PROXY_URL=socks5://127.0.0.1:9050
PHISH_PROXY_SSL_VERIFY=true   # Tor لا يعترض TLS

Burp Suite (فحص الحركة)

يعمل Burp كوسيط TLS ويعرض شهادة CA الخاصة به لكل اتصال HTTPS. بدون تعطيل التحقق من SSL، سيفشل كل طلب HTTPS عبر الوكيل.

PHISH_PROXY_URL=http://127.0.0.1:8080
PHISH_PROXY_SSL_VERIFY=false  # مطلوب لـ Burp / الوكلاء المعترضين

ملاحظة: PHISH_PROXY_SSL_VERIFY=false تؤثر فقط على اتصالات HTTPS الصادرة التي يقوم بها الخلفية Python (الإضافات، أداة البصمة، الزاحف). متصفح Playwright يعمل بالفعل مع ignore_https_errors=true بغض النظر عن هذا الإعداد.

تحذير: لا تقم أبدًا بتعيين PHISH_PROXY_SSL_VERIFY=false بدون تكوين وكيل — سيعطل التحقق من الشهادة لجميع استدعاءات API الخارجية (URLhaus, VirusTotal).


واجهة برمجة التطبيقات REST

المسار الأساسي: /api/v1

الطريقةالمسارالوصف
POST/collectionsإرسال رابط للتجميع
GET/collectionsعرض جميع المجموعات
GET/collections/{id}التفاصيل الكاملة + البصمة
GET/collections/{id}/screenshotلقطة شاشة بصيغة PNG للصفحة كاملة
GET/collections/{id}/htmlHTML الملتقط (يُحمّل كنص عادي)
GET/collections/{id}/requestsسجل طلبات الشبكة
GET/collections/{id}/spiderنتائج الزاحف
GET/collections/{id}/pluginsنتائج إضافات استخبارات التهديدات
POST/collections/{id}/plugins/refreshإعادة تشغيل الإضافات (مثل جلب نتيجة VT معلقة)
POST/collections/{id}/rescanإعادة جمع نفس الرابط (الأصلي محفوظ)
PATCH/collections/{id}تحديث الوسوم والملاحظات
GET/collections/{id}/export?format=json|csvتصدير بيانات المجموعة
DELETE/collections/{id}حذف مجموعة وجميع منتجاتها
GET/searchالبحث في البصمات حسب IP، تجزئة favicon، التقنية، الدولة، العنوان

التوثيق التفاعلي الكامل في /docs (Swagger UI).

إرسال مسح ضوئي

curl -X POST http://localhost:8000/api/v1/collections \
  -H 'Content-Type: application/json' \
  -d '{"url": "https://suspicious-site.example.com", "use_wordlist": true}'

واجهة سطر الأوامر

# التثبيت (داخل الحاوية أو بيئة افتراضية محلية مع requirements.txt)
pip install -e .

# إرسال رابط والانتظار حتى الانتهاء
phishcollector collect https://target.example.com --wait

# مع اختبار تخميني بقائمة كلمات
phishcollector collect https://target.example.com --wordlist --wait

# عرض الوظائف الأخيرة
phishcollector list

# عرض التفاصيل الكاملة
phishcollector detail <job-id>

# تنزيل لقطة الشاشة
phishcollector screenshot <job-id> -o capture.png

# البحث حسب حزمة التقنيات / تجزئة favicon / الدولة
phishcollector search --tech WordPress --country RU
phishcollector search --favicon-hash -1234567890

إضافات استخبارات التهديدات

URLhaus (abuse.ch)

يتطلب مفتاح Auth-Key مجاني من auth.abuse.ch.

PHISH_URLHAUS_ENABLED=true
PHISH_URLHAUS_API_KEY=<مفتاح-المصادقة-الخاص-بك>

VirusTotal

يتطلب مفتاح API مجاني أو مدفوع من virustotal.com.

PHISH_VIRUSTOTAL_API_KEY=<مفتاحك>

عندما لا يكون الرابط قد تم تحليله بعد بواسطة VT، يقوم PhishCollector بإرساله للمسح الضوئي ويجلب النتيجة تلقائيًا كل 30 ثانية حتى يتم حلها.

إضافة إضافاتك الخاصة

كل إضافة هي ملف واحد في phishcollector/plugins/ يعرض دالة async واحدة:

# phishcollector/plugins/myplugin.py
from . import CheckResult

async def check(url: str, proxy_url=None, ssl_verify=True) -> CheckResult:
    # استعلم عن مصدرك / API هنا
    return CheckResult(
        plugin_name="myplugin",
        status="malicious",   # malicious | suspicious | clean | unknown | error
        score=0.95,           # 0.0–1.0، أو None
        result={"raw": ...},  # مخزنة بصيغة JSONB، معروضة في الواجهة
    )

ثم سجلها في phishcollector/plugins/runner.py:

from .myplugin import check as myplugin_check
tasks.append(myplugin_check(url, proxy_url=settings.proxy_url, ssl_verify=settings.proxy_ssl_verify))

لا حاجة لأي تغييرات أخرى — يتم تخزين النتيجة تلقائيًا، وعرضها في لوحة التحكم، وإدخالها في درجة التهديد.


تخصيص مؤشرات التصيد

محرك الكشف يُحتفظ به عمدًا كـ بيانات نصية قابلة للقراءة حتى يتمكن الباحثون من ضبطه حسب الحزم والحملات التي يتتبعونها. كل شيء موجود في ملف واحد:

phishcollector/collector/fingerprint.py

PHISHING_PATTERNS — قواعد regex تُفحص مقابل HTML + JS المعروضين

كل إدخال هو مجموعة (regex, label_مقروء_للبشر) مجمعة في فئات. أي تطابق في أي فئة يظهر في علامة التبويب المؤشرات ويساهم في درجة التهديد.

PHISHING_PATTERNS: dict[str, list[tuple[str, str]]] = {

    "credential_harvest": [
        (r"document\.getElementById\(['\"]password['\"]", "JS يقرأ حقل كلمة المرور بواسطة المعرف"),
        (r"btoa\s*\(.*password", "ترميز كلمة المرور بـ Base64"),
        # أضف قواعدك الخاصة هنا …
    ],

    "obfuscation": [
        (r"\beval\s*\(", "استخدام eval()"),
        (r"atob\s*\(", "فك ترميز Base64 في وقت التشغيل"),
    ],
تنزيل الأداة