Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ProHunter — نظام كشف تهديدات قائم على الرسوم البيانية يستخدم مطابقة متجهات الرسوم البيانية غير الدقيقة لمقارنة رسوم التهديدات مع رسوم استعلام الهجمات المشتقة من CTI لإصدار حكم آلي على الأنشطة الخبيثة وتقييم مستوى التهديد. | Kitploit
أدوات/GitHubGitHub/xueboqiu/prohunter
الاستطلاعتحليل الثغرات الأمنيةجمع المعلوماتاستخبارات التهديداتتعلم الآلةكشف الشذوذ
GitHubxueboqiu/prohunter

ProHunter

نظام كشف تهديدات قائم على الرسوم البيانية يستخدم مطابقة متجهات الرسوم البيانية غير الدقيقة لمقارنة رسوم التهديدات مع رسوم استعلام الهجمات المشتقة من CTI لإصدار حكم آلي على الأنشطة الخبيثة وتقييم مستوى التهديد.

عرض المستودع
10410منذ 9 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

📋 نظرة عامة

هذه الوحدة هي مكوّن أساسي من نظام ProHunter، مصممة بشكل أساسي لإجراء حكم على الخبيث تجاه الرسوم البيانية للتهديدات التي يتم أخذ عينات منها من وحدة PPG. الفكرة الرئيسية لهذه الطريقة هي استخدام مطابقة متجهات الرسوم البيانية غير الدقيقة لحساب التشابه المتجهي بين الرسوم البيانية للتهديدات والرسوم البيانية لاستعلامات الهجوم المولّدة من CTI، مما ينتج درجات تهديد للحكم. يوضَّح الإطار كما يلي.

إطار عمل نظام ProHunter

ملاحظة: يعمل هذا المشروع كوحدة الكشف النهائية (downstream) لـ PPG، أي تمثيل الهجوم والمطابقة. للحصول على سير العمل الكامل بما في ذلك تخزين الرسم البياني للأثر وأخذ عينات الرسم البياني للتهديد، يرجى الرجوع إلى وحدة PPG أولاً.


🚀 بدء سريع

المتطلبات

إصدار Python: 3.7.12

root@kitploit:~
# Clone the repository
git clone https://github.com/xueboQiu/ProHunter
cd ProHunter

# Install dependencies
pip install -r requirements.txt

📊 الوحدات الوظيفية

1️⃣ تصور الرسم البياني للتهديد

تصور الرسوم البيانية للتهديدات التي تم أخذ عينات منها بواسطة وحدة PPG.

الاستخدام:

  1. ضع بيانات الرسم البياني للتهديد في دليل مجموعة البيانات المقابل:

    root@kitploit:~
    dataset/darpa_cadets/sgs_demo/sce041214_E5A15412-68E0-FD54-A068-DD6114FD9040_2.txt # The case provided for visualization
    
  2. جهّز ملف التعيين (مثل names.json)، والذي يمكن إنشاؤه تلقائيًا عن طريق تشغيل dataset_preprocess.py (انظر سير عمل وحدة كشف التهديدات)

  3. عدّل مسارات مجموعة البيانات في subgraph_vision.py، ثم شغّل البرنامج النصي للتصور:

    root@kitploit:~
    python subgraph_vision.py
    

    حدد مجموعة البيانات المقابلة في البرنامج النصي. سيقرأ البرنامج تلقائيًا بيانات الرسم البياني الفرعي من دليل sgs_demo ويعرضها.

مثال على نتيجة التصور:

تصور الرسم البياني للتهديد

2️⃣ وحدة كشف التهديدات

الخطوة 1: تنزيل مجموعات البيانات

ضع الملفات التي تم تنزيلها في دليل المشروع وفقًا للهيكل التالي:

root@kitploit:~
datasets/darpa_{dataset_name}/raws/xx.json

الخطوة 2: المعالجة المسبقة للبيانات

root@kitploit:~
python preprocess/dataset_preprocess.py  # Extract triple information from raw datasets:

يؤدي ذلك إلى إنشاء ملفات الثلاثيات (tuple) في:

root@kitploit:~
datasets/darpa_{dataset_name}/tuples/xx.txt

الخطوة 3: إنشاء مجموعتي التدريب والاختبار

root@kitploit:~
python preprocess/parse_trace.py

الخطوة 4: تدريب النموذج

root@kitploit:~
python pretrain_gmpt_cl.py --mode={dataset_name} --eval=False

ملاحظة: يمكن العثور على معلمات إضافية (مثل عدد العصور epoch، معدل التعلم) في دالة parse_args() في util.py.

الخطوة 5: تقييم النموذج

root@kitploit:~
python pretrain_gmpt_cl.py --mode={dataset_name} --eval=True

سيقوم النموذج بتحميل معاملات النموذج من models/{dataset_name}/best.pth.

3️⃣ مثال مقدم

يوفر المشروع عينات من مجموعة بيانات CADETS المعالجة مسبقًا للاختبار الفوري:

root@kitploit:~
# Direct evaluation (using pre-trained model)
python pretrain_gmpt_cl.py --mode=cadets --eval=True

# Re-train the model
python pretrain_gmpt_cl.py --mode=cadets --eval=False
python pretrain_gmpt_cl.py --mode=cadets --eval=True

مثال على نتائج التقييم:

نتائج صيد التهديدات

📁 بنية المشروع

root@kitploit:~
ProHunter/
├── dataset/
│   └── darpa_cadets/              # Example dataset
│       ├── raws/                  # Raw dataset files
│       ├── sgs_demo/              
│       ├── test/                  
│       ├── train/                 
│       ├── tuples/                # Extracted tuples
│       ├── edge_type_map.json     
│       ├── names.json             # UUID to name mapping 
│       ├── node_type_map.json    
│       └── types.json             # UUID to type mapping
├── models/
│   └── {dataset_name}/
│       └── best.pth               # Trained model parameters
├── preprocess/                    # Data preprocessing scripts
├── subgraph/                      
├── batch.py                       
├── darpa_loader.py                # DARPA data loader
├── darpa_model.py                 
├── dataloader.py                  # Data loading utilities
├── graph_matching.py              
├── pretrain_gmpt_cl.py            # Main training & evaluation script
├── splitters.py                   
├── util.py                        # Utility functions & arguments
├── requirements.txt               # Dependencies
└── readme.md                      
تنزيل الأداة
مجموعة البياناتملفات السجلاتالمنصةرابط التنزيل
E3-Cadetsta1-cadets-e3-official-1.json.{0-4}FreeBSDDARPA E3
E3-Theiata1-theia-e3-official-6r.json.{0-12}LinuxDARPA E3
E3-Traceta1-trace-e3-official.json.{0-203}LinuxDARPA E3
E5-Theiata1-theia-1-e5-official-2.bin.{27-31}LinuxDARPA E5
E5-Clearscope2_1ta1-clearscope-2-e5-official-1.bin.{15-20}AndroidDARPA E5
E5-Clearscope2_2ta1-clearscope-2-e5-official-1.bin.{24-33}AndroidDARPA E5
OPTCbenign/20-23Sep19/AIA-201-225/{*}WindowsOpTC