ماسح CVE-2023-38831
نظرة عامة
ماسح CVE-2023-38831 هو أداة متقدمة في مجال الأمن السيبراني مصممة لكشف وتحليل وجود ثغرة CVE-2023-38831 في تثبيتات WinRAR. يطبّق هذا المشروع نهجًا متعدد الطبقات لكشف الثغرات، ويتضمن فحوصات سلامة الملفات، ومسح ذاكرة العمليات، وتحليل حركة مرور الشبكة، والتنفيذ في بيئة معزولة (sandbox).
الميزات
- كشف الثغرات: يفحص تثبيتات WinRAR بحثًا عن ثغرة CVE-2023-38831.
- فحص سلامة الملفات: يتحقق من سلامة الملفات التنفيذية الخاصة بـ WinRAR.
- مسح ذاكرة العمليات: يحلل ذاكرة عمليات WinRAR قيد التشغيل بحثًا عن أنماط مشبوهة.
- تحليل حركة مرور الشبكة: يراقب حركة مرور الشبكة بحثًا عن محاولات استغلال محتملة.
- التنفيذ في بيئة معزولة: ينفّذ ويحلل WinRAR بأمان في بيئة خاضعة للتحكم.
- واجهة ويب: يوفر واجهة ويب سهلة الاستخدام لبدء عمليات الفحص وعرض النتائج.
- التكامل مع قاعدة البيانات: يخزن ويسترجع نتائج الفحص لإجراء تحليلات تاريخية.
- التصور: يعرض نتائج الفحص من خلال رسوم بيانية وجداول تفاعلية.
البنية التقنية
المكونات الأساسية
- وحدة الماسح (
src/scanner.py): تنسّق عملية الفحص، وتدمج جميع طرق الكشف.
- مدقق السلامة (
src/integrity.py): ينفذ التحقق من تجزئات الملفات للملفات التنفيذية الخاصة بـ WinRAR.
- ماسح الذاكرة (
src/memory_scanner.py): يستخدم psutil لتحليل ذاكرة العمليات.
- محلل الشبكة (
src/network_analyzer.py): يعتمد على scapy لفحص حزم الشبكة.
- بيئة العزل (
src/sandbox.py): ينشئ بيئة معزولة للتنفيذ والتحليل الآمن.
- معالج قاعدة البيانات (
src/database.py): يدير عمليات قاعدة بيانات SQLite لتخزين النتائج واسترجاعها.
- واجهة الويب (
src/web_interface.py): ينفذ خادم ويب مبنيًا على Flask لتفاعل المستخدم.
التقنيات الرئيسية
- Python 3.8+: لغة البرمجة الأساسية
- SQLite: قاعدة بيانات خفيفة لتخزين نتائج الفحص
- Flask: إطار عمل ويب لواجهة المستخدم
- Scapy: معالجة وتحليل حزم الشبكة
- psutil: مراقبة عبر المنصات للعمليات والنظام
- Chart.js: مكتبة جافاسكريبت لتصور النتائج
التثبيت
- استنسخ المستودع:
git clone https://github.com/yezzfusl/cve_2023_38831_scanner.git
cd cve_2023_38831_scanner
- أنشئ بيئة افتراضية وفعّلها:
python -m venv venv
source venv/bin/activate # على ويندوز، استخدم venv\Scripts\activate
- ثبّت التبعيات:
pip install -r requirements.txt
- جهّز قاعدة البيانات:
python -c "from src.database import Database; Database().create_table()"
الاستخدام
واجهة سطر الأوامر
- شغّل الماسح من سطر الأوامر:
واجهة الويب
- ابدأ خادم الويب:
python -m src.web_interface
الوصول إلى واجهة الويب على http://localhost:5000.
الإعدادات
- إعدادات قاعدة البيانات: عدّل
src/database.py لتغيير موقع ملف قاعدة البيانات أو التبديل إلى نظام قاعدة بيانات مختلف.
- معاملات الفحص: اضبط قيم العتبات وأنماط الكشف في ملفات الوحدات المعنية (مثل
src/memory_scanner.py و src/network_analyzer.py).
الاختبار
اعتبارات أمنية
- يجب استخدام هذه الأداة فقط على الأنظمة التي تملكها أو لديك إذن صريح لاختبارها.
- توفر بيئة العزل طبقة إضافية من الأمان، ولكن يجب توخي الحذر عند فحص ملفات قد تكون ضارة.
- قد يلتقط تحليل حركة مرور الشبكة بيانات حساسة. تأكد من الامتثال للقوانين واللوائح ذات الصلة بالخصوصية.
تحسين الأداء
- يستخدم ماسح الذاكرة تقنيات فعالة لتعيين الذاكرة لتقليل استهلاك الموارد.
- استعلامات قاعدة البيانات محسّنة للأداء، مع فهرسة مناسبة للأعمدة التي يتم الوصول إليها بشكل متكرر.
- تطبق واجهة الويب فحصًا غير متزامن لمنع تجميد الواجهة أثناء عمليات الفحص الطويلة.
توسيع المشروع
- فحوصات ثغرات إضافية: نفّذ طرق كشف جديدة في وحدات منفصلة ودمجها في وحدة
scanner.py.
- تطوير API: وسّع واجهة الويب لتوفير RESTful API للتكامل مع أدوات أمنية أخرى.
- التكامل مع التعلم الآلي: أدرج نماذج تعلم آلي لكشف الحالات الشاذة في سلوك العمليات أو أنماط حركة مرور الشبكة.
المساهمة
- انسخ المستودع (fork).
- أنشئ فرعًا جديدًا لميزتك:
git checkout -b feature-name
- نفّذ تغييراتك:
git commit -am 'Add some feature'
- ادفع إلى الفرع:
git push origin feature-name
- قدّم طلب سحب (pull request).
الترخيص
هذا المشروع مرخّص بموجب رخصة MIT - راجع ملف LICENSE للحصول على التفاصيل.
الإقرارات
إخلاء المسؤولية
هذه الأداة مخصصة للاستخدام التعليمي والمهني فقط. المؤلفون غير مسؤولين عن أي إساءة استخدام أو ضرر ناتج عن هذا البرنامج. تأكد دائمًا من حصولك على إذن قبل فحص الأنظمة أو الشبكات التي لا تملكها.