
أدلة تركز على الهندسة العكسية للبرمجيات الخبيثة مع فحص عميق لملفات PE/.NET، وإعادة البناء عبر Ghidra، وفحوصات متقاطعة بالذكاء الاصطناعي، وYARA، وتصحيح أخطاء ELF
أداة سطر أوامر للهندسة العكسية تركز على الأدلة. يطوّر Andrey Pautov واجهة المحلل بلغة Python، والفرز دون اتصال، واستخبارات النصوص، وفحص PE، وسير عمل التقارير. تُعد Capstone وGhidra وGDB ومزودو الذكاء الاصطناعي الاختياريون عمليات تكامل، وليست أدوات أصلية من تأليف هذا المشروع.
ملاءمة الدور: فرز البرمجيات الخبيثة، وأدوات الهندسة العكسية، والتحليل الآمن بمساعدة الذكاء الاصطناعي، والتسليم بلغة Python.
شغّل العرض المحلي الآمن وراجع نطاق التحقق · التحقق المحلي المسجّل
AIDebug هي أداة سطر أوامر وواجهة طرفية للهندسة العكسية للبرمجيات الخبيثة تركز على الأدلة. وهي تجمع بين الفرز الحتمي دون اتصال، وفحص الملف الكامل بالنظام السادس عشري، وتحليل بنية PE العميق، وتفكيك Capstone، وإعادة بناء Ghidra، والتحقق المتقاطع الاختياري عبر LLM، وتصحيح أخطاء ELF المحلي، وتمارين التعلّم المُصرّفة، وتقارير مراجعة المحلل.
إصدار المصدر الحالي: AIDebug 3.1.0. راجع ملاحظات إصدار 3.1.0.
لا يزال أحدث إصدار منشور غير قابل للتغيير هو AIDebug v3.0.0، والمتاح باسم
1200km-aidebug، حتى يكتمل وسم 3.1.0 المطابق للإصدار وإصدار GitHub عبر سير عمل النشر المُتحقَّق منه.
ثبّت الحزمة المستقرة من PyPI:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install 1200km-aidebug==3.0.0
aidebug --version
ثبّت القدرات الاختيارية حسب الحاجة:
# Remote/local LLM providers and validated YARA generation
python -m pip install "1200km-aidebug[ai]==3.0.0"
# Frida dynamic instrumentation
python -m pip install "1200km-aidebug[dynamic]==3.0.0"
# All optional Python integrations
python -m pip install "1200km-aidebug[all]==3.0.0"
للتطوير:
git clone https://github.com/anpa1200/AIDebug.git
cd AIDebug
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e ".[dev,dynamic]"
تُعد Ghidra وGDB وBubblewrap ومُصرّف C ومكوّنات هدف Frida أدوات خارجية تُستخدم فقط من قبل سير العمل الذي يتطلبها.
افتح عيّنة PE أو ELF في واجهة الطرفية الرئيسية:
aidebug --binary /path/to/sample.exe --offline
شغّل التحليل الحتمي دون الواجهة ملء الشاشة وصدّر الأدلة:
aidebug --binary /path/to/sample.exe \
--offline --no-tui --report --json-export --yara \
--out-dir reports/
استخدم إعادة البناء عبر Ghidra:
aidebug --binary /path/to/sample.exe --offline --no-tui --decompile
aidebug --binary /path/to/sample.exe --offline --no-tui \
--decompile-all reports/sample-reconstruction.c
حلّل وحدة ترجمة C واحدة عبر أثر ELF مؤقت غير مُنفَّذ:
aidebug --source /path/to/example.c --offline --no-tui
حدّد هوية ملف عشوائي بمعزل عن امتداد اسمه:
aidebug --identify /path/to/renamed-or-unknown-file --offline
يُخرج --identify بيانات JSON منظمة تتضمن النوع المُعلن ونوع MIME والامتدادات
الشائعة ودرجة الثقة والطريقة والأدلة وSHA-256 والحجم. تشمل التغطية الحتمية
صيغ الملفات التنفيذية والبايت كود الشائعة، والأرشيفات وصور الأقراص، وحاويات
Office/OpenDocument/EPUB، والمستندات، والصور، والصوت/الفيديو،
ولقطات الحزم، وقواعد البيانات، ومخلفات السجل/سجل الأحداث، والنصوص البرمجية، والنصوص.
تُفحص الصيغ المعتمدة على ZIP عبر أسماء الأعضاء المحدودة وقراءات بيانات وصفية صغيرة؛
ولا تُنفَّذ الملفات أو تُستخرج أبدًا.
ثبّت python-magic مع قاعدة بيانات libmagic الخاصة بنظام التشغيل للحصول
على توقيعات إضافية معروفة للمنصة المحلية:
python -m pip install python-magic
عندما لا يتطابق أي توقيع حتمي أو بنية أو قاعدة نصية، قد يستنتج مزود ذكاء اصطناعي
مُهيَّأ مرشحًا من بيانات وصفية محدودة: الامتداد والحجم وSHA-256 وحتى 96 بايت من
الترويسة و32 بايت من الذيل وإنتروبيا العيّنة ونسبة NUL.
لا يُرسل جسم الملف ولا النصوص المستخرجة ولا مسار نظام الملفات. تُوسم النتائج
المعتمدة على الذكاء الاصطناعي فقط بـ ai-inference، وتُحدَّد بسقف ثقة 60%،
وتتطلب تحقق المحلل. استخدم --offline لتعطيل الاحتياطي تمامًا؛ ويُبلَّغ عن
نوع غير محلول باسم Unknown مع حالة خروج 2.
اضغط S في واجهة الطرفية الرئيسية، أو ابدأ مباشرة في مساحة العمل:
aidebug --binary /path/to/sample.exe --offline --strings
تحافظ مساحة العمل على إزاحات الملف والعناوين المعيَّنة عند توفرها والترميز وأطوال البايتات والأحرف ومعلومات التكرارات المكررة وسياق القسم ودرجة الثقة ودرجة الفرز والأسباب الحتمية لكل تصنيف. تشمل المرشحات الحد الأدنى للطول والترميز والتصنيف والبحث النصي الحر؛ ويحافظ فرز الأعمدة والترقيم على قابلية استخدام الجرد الكبير. يفحص كل ترميز مُختار الأثر الكامل المحدود الحجم. يُحدَّد الجرد المحتفظ به بسقف 25,000 سجل و4,096 حرفًا معروضًا لكل قيمة؛ وتجعل أعداد المرشحات/الإغفالات الدقيقة والتغطية الكاملة للبايتات أي سقف منهما مرئيًا. يحتفظ كل سجل بـ 32 تعليقًا توضيحيًا كحد أقصى لـ DLL/API و4,096 حرفًا من الوصف؛ ويُبلَّغ عن الفائض العدائي في أسباب السجل.
الكشف متعدد الوسوم. يمكن أن تكون القيمة الواحدة في الوقت نفسه DLL أو مسار Windows
أو URL أو عنوان IP أو مفتاح سجل أو أمرًا أو جزءًا من PowerShell أو أنبوبًا مُسمّى
أو تجزئة أو مرشح بيانات اعتماد أو وكيل مستخدم أو أي نوع دليل مدعوم آخر.
تُطبَّع مرشحات النطاقات وفق IDNA وتُفحص مقابل لقطة منطقة جذر IANA
المضمّنة دون اتصال؛ ويجب أن تشغل عناوين IP رمزًا كاملًا صالحًا،
ويجب أن تطابق إسنادات التهيئة قواعد نحوية محافظة للسطر الكامل. يمنع ذلك
ترقية الشظايا الثنائية القصيرة لمجرد احتوائها على نقطة أو نقطتين رأسيتين أو علامة يساوي.
تتشارك الوسوم المترابطة عائلة ثقة واحدة، لذا لا يُعامل
ip_address مع ipv6 كملاحظتين مستقلتين.
تتلقى ملفات DLL وواجهات API المعروفة أوصافًا محايدة قصيرة للقدرات؛
وتتلقى الأسماء غير المعروفة بديلًا صريحًا غير مُتحقَّق منه بدلًا من غرض مُخمَّن.
الاسم المستخرج دليل على الوجود، وليس إثباتًا بأن الشيفرة استدعته
أو أن العيّنة خبيثة.
اطبع الجرد الحتمي محليًا، أو رشّح عرض سطر الأوامر المعروض، أو اكتب الجرد الكامل القانوني بصيغة JSON للمالك فقط: