
منصة هندسة عكسية مدعومة بـ MCP تربط بين WinDbg وIDA Pro وx64dbg مع أكثر من 160 أداة تصحيح وتحليل قابلة للوصول عبر الذكاء الاصطناعي.
خوادم MCP لـ WinDbg وIDA Pro وx64dbg
واجهة stdio واحدة · أكثر من 160 أداة · ثلاثة مُنقِّحات، عميل واحد.
البدء السريع · البنية · الخوادم · سير العمل · الإبلاغ عن مشكلة
الموقع · ctxdebug.xyz · التواصل · [email protected] · الحالة · نسخة ألفا عامة
للهندسة العكسية المصرَّح بها، وتحليل الأعطال، والبحث الأمني على الأنظمة التي تملكها أو لديك إذن بتحليلها.
ctxdebug هي منصة MCP (بروتوكول سياق النموذج) تربط WinDbg وIDA Pro 9.x وx64dbg بمساعدي البرمجة بالذكاء الاصطناعي. استخدمها لتحليل تفريغات الأعطال، والمراجعة الساكنة في IDA، والتنقيح الحي في x64dbg — دون نسخ المخرجات بين النوافذ.
واجهة stdio واحدة. أكثر من 160 أداة. ثلاثة مُنقِّحات، عميل واحد.
كيف يعمل. يُعرَض كل مُنقِّح كخادم أدوات MCP. تتحدث إلى Claude أو Kiro أو أي عميل متوافق مع MCP؛ ويستدعي العميل المُنقِّحات. لا نسخ ولصق، ولا ربط يدوي بين الأدوات.
مثال. تسأل: "حلّل تفريغ العطل هذا واعثر على السبب الجذري." يفتح ctxdebug التفريغ في WinDbg، ويشغّل
!analyze -v، ويأخذ عنوان الخطأ، ويفكّك الدالة في IDA Pro، ويعيد تقريرًا مدمجًا مع الشيفرة الزائفة وسلسلة المستدعين.
أمر واحد → يفتح WinDbg التفريغ، ويحلّل العطل، ويفكّك IDA الدالة المسببة للخطأ — تقرير مدمج في ~1.8 ثانية.
git clone https://github.com/DdUdle/ctxdebug.git
cd ctxdebug
pip install -e .
خوادم فردية:
claude mcp add windbg -- python windbg_mcp.py
claude mcp add ida -- python ida_mcp.py
claude mcp add x64dbg -- python -m agent --mcp
claude mcp add mco -- python mco_orchestrator.py
claude mcp add mco-sessions -- python mco_sessions.py
أو استخدم البوابة الموحّدة — خادم واحد، كل الأدوات:
claude mcp add mco-gateway -- python mco_gateway.py
راجع mcp_config_example.json للحصول على تكوين JSON الكامل مع متغيرات البيئة.
بمجرد تسجيل خادم، اطلب من عميل الذكاء الاصطناعي الخاص بك:
Open C:\dumps\crash.dmp, run a full crash analysis,
and decompile the function at the fault address.
يقوم المنسّق بتسلسل windbg_open_dump → windbg_analyze_crash → mco_pivot_to_ida ويعيد الشيفرة الزائفة مع سلسلة المستدعين.
| القدرة | ما تفعله |
|---|---|
| التحكم المباشر في المنقّح | تشغيل عملية وإيقافها مؤقتًا وتنفيذها خطوة بخطوة وفحصها عبر x64dbg. تعيين نقاط توقف على مجموعات API (memory، network، crypto) بدلًا من عنوان واحد في كل مرة. |
| الانتقال بين المنقّحات | أخذ عنوان من تفريغ انهيار WinDbg وفتحه في IDA Pro لإجراء فك الترجمة العكسية والمستدعين والمستدعين منه في استدعاء أداة واحد. |
| تحليل موجّه بالأهداف | يتضمن خادم x64dbg وكيل ReAct اختياريًا (agent_analyze) يخطط لأهداف متعددة الخطوات — مثل إيجاد حلقة فك التغليف أو سرد فحوصات مقاومة التحليل — عبر تسلسل استدعاءات الأدوات. يعمل مع Claude أو Groq أو Ollama المحلي أو الاستدلالات فقط. |
| ملاحظات دائمة | يخزّن الوكيل بصمات المغلفات وأنماط مقاومة التحليل والملاحظات من جلسات سابقة، ويمكنه استدعاؤها على أهداف جديدة. |
| تسجيل الجلسات | يمكن تسجيل استدعاءات الأدوات في SQLite مع بحث نصي كامل (FTS5). أعد تشغيل خط زمني أو قارن جلستين أو صدّر تقرير Markdown. |
| مسح مقاومة التحليل | يجمع بين مسح ساكن (استيرادات/أنماط IDA) ومسح ديناميكي (PEB/RDTSC في x64dbg) في تقرير واحد. تصحيحات مخبرية اختيارية (أعلام PEB، تعديلات التعليمات) للعينات المصرّح لك بتحليلها. |
2024-11-05)localhost:2022، يكتشف نقطة النهاية تلقائيًا من 6 مرشحينX64A + طول uint32 + حشو 8 بايت + JSON)| الخادم | الملف | ما يفعله | الأدوات |
|---|---|---|---|
windbg | windbg_mcp.py | تفريغات الانهيار، تحليل الكومة، المكدس الظل، تنقيح النواة | 70+ |
ida | ida_mcp.py | فك الترجمة العكسية، المراجع المتقاطعة، استرداد الأنواع، ترقيع الملفات الثنائية | 32+ |
x64dbg | agent/ | التحليل الديناميكي، وكيل ReAct، فحص الذاكرة وترقيعها | 38+ |
mco | mco_orchestrator.py | سير عمل مركّب بين المنقّحات | 7 |
mco-sessions | mco_sessions.py | تسجيل الجلسات، بحث FTS، تصدير Markdown | 13 |
mco-gateway | mco_gateway.py | وكيل موحّد — جميع الخوادم عبر اتصال واحد | الكل |
يحتاج إلى cdb.exe من Windows SDK. المسار الافتراضي:
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\cdb.exe
عيّن WINDBG_MCP_CDB إذا كان مسارك مختلفًا. لا حاجة إلى تشغيل مسبق — تفتح الأدوات ملفات التفريغ أو تتصل عند الطلب.
افتح IDA Pro 9.x مع تحميل ملف ثنائي.
في وحدة تحكم Python، شغّل:
exec(open(r'path\to\ctxdebug\ida_server_plugin.py').read())
يبدأ خادم HTTP على المنفذ 2022.
ابنِ إضافة C++:
cd agent\plugins
build_plugin.bat
انسخ mco_agent.dp64 إلى دليل الإضافات في x64dbg.
أعد تشغيل x64dbg — تكشف الإضافة الأنبوب المسمّى \\.\pipe\x64dbg_ai_agent.
تفريغ الأعطال → المصدر (أمر واحد)
mco_crash_to_source(dump_path="C:\\dumps\\crash.dmp")
يفتح ملف التفريغ، ويشغّل !analyze -v، ويستخرج عنوان الخطأ، ويفكّ تجميع الدالة المتسببة في الانهيار في IDA، ويعيد الشيفرة الزائفة مع الدوال المستدعية.
تقرير مكافحة التحليل
mco_bossix_report()
bossix_hide() # PEB flag adjustments (lab)
bossix_patch(address) # NOP / flip JCC at a check (lab)
لتحليل مخبري مُصرَّح به لعينات تُطبِّق فحوصات مقاومة التصحيح.
تحويل عنوان إلى شيفرة زائفة
mco_pivot_to_ida(address="0x7FF712340000")
تحليل موجّه بالأهداف
agent_analyze(goal="Find the unpacking loop and identify the OEP")