Skip to main content

Advanced AI-Driven Penetration Testing Tool

Project description

Vulnmap: أداة فحص ورسم خرائط الثغرات الأمنية المدعومة بالذكاء الاصطناعي

Vulnmap هي أداة متقدمة لاختبار الاختراق (Penetration Testing) مدعومة بالذكاء الاصطناعي، مصممة لأتمتة عملية فحص الثغرات الأمنية ورسم خرائط الشبكات. تستغل الأداة قوة نماذج اللغة الكبيرة (LLMs) لتعزيز توليد الحمولة (Payload Generation)، وتحليل الاستجابات، ورفع كفاءة الفحص بشكل عام.

الميزات الرئيسية

  • فحص بمساعدة الذكاء الاصطناعي: تستخدم نماذج اللغة الكبيرة لتوليد حمولات ذكية وتحليل الثغرات المعقدة.
  • استطلاع شامل (Reconnaissance): تتضمن وحدات لجمع معلومات النطاق، وكشف التقنيات، ورسم الخرائط الأولية.
  • تصميم معياري (Modular Design): سهولة التوسع بإضافة فحوصات ثغرات جديدة ومزودي ذكاء اصطناعي.
  • تقارير مفصلة: توليد تقارير واضحة وقابلة للتنفيذ (HTML, PDF).
  • قابلية التكوين: قابلة للتخصيص بدرجة عالية عبر ملف config/config.yaml.

التثبيت

بما أن Vulnmap متوفرة كحزمة Python، يمكنك تثبيتها مباشرة باستخدام pip:

pip install vulnmap

المتطلبات الأساسية

  • Python 3.8 أو أعلى.
  • مفتاح API صالح لمزود ذكاء اصطناعي (مثل Gemini أو OpenAI) يتم تكوينه في config/config.yaml.

دليل البدء السريع (Quickstart Guide)

1. التكوين

ملف التكوين الرئيسي هو config/config.yaml. يجب عليك تعديل هذا الملف لتعيين مفتاح API الخاص بمزود الذكاء الاصطناعي وتحديد معلمات الفحص.

مثال على مقتطف التكوين (AI Providers):

المزود التفعيل مفتاح API النموذج
OpenAI enabled: true sk-your-key-here gpt-4o
Claude enabled: true sk-ant-your-key-here claude-3-5-sonnet-20241022
Gemini enabled: true AIzaSy-your-key-here gemini-2.5-flash
OLLAMA enabled: true base_url: http://localhost:11434 llama2

2. تشغيل الفحص

يمكنك تشغيل Vulnmap باستخدام واجهة سطر الأوامر (CLI).

الخيار الوصف مثال
-u, --url عنوان URL المستهدف -u https://example.com
-d, --depth عمق الزحف (Crawl depth) -d 3
-t, --threads عدد الخيوط المتزامنة -t 10
--ai-provider مزود الذكاء الاصطناعي المراد استخدامه --ai-provider openai
--recon تفعيل وحدات الاستطلاع --recon
--full-scan تفعيل جميع الاختبارات --full-scan
-o, --output ملف الإخراج -o report.pdf

أمثلة على أوامر التشغيل:

# فحص أساسي
vulnmap -u https://your-target-website.com

# فحص شامل مع تقرير PDF
vulnmap -u https://testsite.com --recon --full-scan --format pdf -o full_report.pdf

# استخدام مزود AI محدد
vulnmap -u https://testsite.com --ai-provider claude --full-scan

نظرة عامة على هيكلية Vulnmap (Architecture Overview)

تم تصميم Vulnmap بهيكلية معيارية وقابلة للتوسع، تركز على فصل الاهتمامات وقابلية التمديد.

المكونات الأساسية

  1. vulnmap.py (نقطة الدخول الرئيسية):

    • يتعامل مع تحليل وسائط سطر الأوامر.
    • يحمل التكوين ويهيئ محرك الفحص ومدير مزودي الذكاء الاصطناعي.
    • ينسق عملية الفحص الرئيسية (الاستطلاع، الزحف، الفحص).
  2. core/ (المنطق الأساسي):

    • scanner_engine.py: قلب التطبيق. يدير سير عمل الفحص، بما في ذلك الزحف وتفويض فحوصات الثغرات.
    • vulnerability_scanner.py: يحتوي على منطق فحوصات الثغرات المحددة (مثل SQLi، XSS). يتفاعل مع AIProviderManager لتوليد الحمولة وتحليلها بمساعدة الذكاء الاصطناعي.
    • report_generator.py: مسؤول عن تجميع نتائج الفحص في تقارير نهائية (HTML، PDF).
  3. ai_providers/ (تكامل الذكاء الاصطناعي):

    • provider_manager.py: يدير الاتصالات بخدمات الذكاء الاصطناعي المختلفة (Gemini، OpenAI، Claude، Grok، Ollama). يقوم بتجريد استدعاءات API للسماح للمحرك الأساسي بطلب المساعدة من الذكاء الاصطناعي دون معرفة تفاصيل المزود.
  4. utils/ (الأدوات المساعدة):

    • config_loader.py: يتعامل مع تحميل والتحقق من صحة config.yaml.
    • http_client.py: غلاف حول مكتبة requests يوفر إدارة الجلسات ومنطق إعادة المحاولة ودعم الوكيل (Proxy).
    • logger.py: أداة تسجيل مركزية.
    • parser.py: أدوات مساعدة لتطبيع عناوين URL، واستخراج الروابط، وتحليل الاستجابات.

تدفق البيانات (Data Flow)

graph TD
    A[مدخلات المستخدم] --> B(Scanner Engine);
    B --> C(Web Crawler);
    C --> D(URL Discovery);
    B --> E(AI Payload Generator);
    E --> F(AI Provider);
    E --> G(Vulnerability Scanner);
    G --> H(HTTP Client);
    H --> I(الهدف - Target);
    G --> J(Results Collection);
    J --> K(Report Generator);
    K --> L(الإخراج - HTML/PDF/JSON);

نظرة على بنية المجلدات

Vulnmap/
│
├── vulnmap.py                 # نقطة الدخول الرئيسية
├── setup.py                   # إعداد التثبيت
├── requirements.txt           # تبعيات Python
├── README.md                  # وثائق المشروع
├── core/                      # الوظائف الأساسية
├── ai_providers/              # تكامل مزودي الذكاء الاصطناعي
├── modules/                   # وحدات اختبار الأمان (مثل الاستطلاع)
├── utils/                     # وظائف مساعدة
├── config/                    # ملفات التكوين
├── templates/                 # قوالب التقارير
└── reports/                   # التقارير المولدة

اطلع على المستودع

للمساهمة، الإبلاغ عن الأخطاء، أو الاطلاع على شفرة المصدر: https://github.com/AL-MARID/Vulnmap

ملاحظة أمنية هامة

⚠️ هام: استخدم Vulnmap فقط على الأنظمة التي تمتلكها أو لديك إذن صريح باختبارها. اختبار الأمان غير المصرح به غير قانوني.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vulnmap-1.3.1.tar.gz (109.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vulnmap-1.3.1-py3-none-any.whl (76.5 kB view details)

Uploaded Python 3

File details

Details for the file vulnmap-1.3.1.tar.gz.

File metadata

  • Download URL: vulnmap-1.3.1.tar.gz
  • Upload date:
  • Size: 109.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0rc1

File hashes

Hashes for vulnmap-1.3.1.tar.gz
Algorithm Hash digest
SHA256 ae564f94491f48e06e220f859edd642b7d7b584fea852e522b88fd9879c0667c
MD5 03b323dcf55881f7661d09bea8237ce0
BLAKE2b-256 177b3413d15f309f48af4077ee5c684567e7b0489196337cb33cea4d756c3e7b

See more details on using hashes here.

File details

Details for the file vulnmap-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: vulnmap-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 76.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0rc1

File hashes

Hashes for vulnmap-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 86a695b9b5c7c5f1bf9c4f70d3fbc5b1898a11c47703cd95758330e30624bb46
MD5 886b62e18f3780b4c06904950e782124
BLAKE2b-256 958d8125a662751512180038549d5df9e7c2900deeaaf670790ed2b699b23fbf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page