Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
MCPTrace — إضافة Volatility 3 تستخرج مرشّحات رسائل MCP/JSON-RPC من تفريغات ذاكرة Windows وLinux، مع الحفاظ على البايتات الخام والعناوين وSHA-256 للتحقق. | Kitploit
أدوات/GitHubGitHub/kowntaewook/mcptrace
تحليل الذاكرة الجنائيالتحقيق الجنائي الرقميجمع المعلوماتتحليل البرمجيات الخبيثةالتحاليل الرقمية الجنائيةالاستجابة للحوادثأمن الذكاء الاصطناعيتحليل السجلات
GitHubkowntaewook/mcptrace

MCPTrace

إضافة Volatility 3 تستخرج مرشّحات رسائل MCP/JSON-RPC من تفريغات ذاكرة Windows وLinux، مع الحفاظ على البايتات الخام والعناوين وSHA-256 للتحقق.

عرض المستودع
760منذ 9 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

MCPTrace

MCPTrace هو إضافة Volatility 3 لاستخراج مرشّحات رسائل MCP/JSON-RPC من تفريغات ذاكرة Windows وLinux. يفحص ذاكرة العمليات بحثًا عن الطلبات والاستجابات والإشعارات وأسماء الأدوات ومعاملات الاستدعاء، ثم يسجّل المحتوى المستعاد مع موقعه في الذاكرة.

يركّز المشروع على الأدلة التي يمكن للمحلل فحصها والتحقق منها. يحتفظ كل أثر ببايته الأصلية ومعرّف العملية والعنوان الافتراضي والترميز والطول وتجزئة SHA-256. يمكن تصدير النتائج بصيغة JSONL لمزيد من التحليل أو المقارنة مع سجلات أخرى. يعمل MCPTrace على صورة ذاكرة مكتسبة ولا يتطلب نموذجًا لغويًا كبيرًا (LLM) أو واجهة برمجة تطبيقات ذكاء اصطناعي خارجية.

الميزات

  • استخراج آثار JSON-RPC بترميز UTF-8 وUTF-16LE من ذاكرة العمليات القابلة للقراءة.
  • تحديد الطرق والأشكال المرتبطة بـ MCP، بما في ذلك أسماء ومعاملات tools/call.
  • الحفاظ على البايتات والعناوين الأصلية للتحقق منها لاحقًا مقابل الصورة.
  • اقتراح علاقات الطلب/الاستجابة باستخدام نفس PID ومعرّف الطلب المُنمّط.
  • تطبيق قواعد اختيارية يحددها المحلل على معاملات الأدوات، مثل فحوصات المسارات أو عناوين URL.
  • تصدير الآثار وملخصات كل عملية، بما في ذلك البايتات غير القابلة للقراءة والأخطاء وحدود البحث.

أهداف التحليل الحالية هي Windows x64 وLinux x86-64. يشير اسم الإضافة إلى نظام التشغيل في صورة الذاكرة، بمعزل عن نظام التشغيل المستخدم لتشغيل Volatility.

كيف يعمل

يستخدم MCPTrace تعداد العمليات وترجمة العناوين في Volatility. على Windows، يتنقل عبر واصفات العناوين الافتراضية (VADs) للعملية؛ وعلى Linux، يتنقل عبر مناطق الذاكرة الافتراضية (VMAs). تحدد هذه التعيينات نطاقات عناوين العملية التي تُفحص. تشترك المحوّلان في نفس كود نحت الرسائل والربط والسياسة والتصدير.

داخل النطاقات القابلة للقراءة، يبحث الماسح الضوئي عن علامات إصدار JSON-RPC الحرفية ويحدد كائنات JSON المرشّحة حولها. يتعامل مع الكائنات المتداخلة والأحرف المُهرَّبة والأقواس داخل السلاسل النصية والرسائل الممتدة عبر أجزاء قراءة متجاورة. يُرفض JSON ذو المفاتيح المكررة أو المعرّفات غير المدعومة بدلًا من إعادة تفسيره بصمت. تُحدَّد صلة MCP من أسماء الطرق المعروفة وأشكال الاستجابة ومعرّفات الطلبات المرتبطة؛ وهي ليست تحققًا كاملًا من مخطط MCP.

تبقى الذاكرة المفقودة مفقودة. لا يملأ القارئ الفجوات بالأصفار ولا يدمج البايتات عبر VADs/VMAs منفصلة. مع --include-partial، يمكن عرض الشظايا غير المُحلَّلة بشكل منفصل، دون اختلاق معرّفات أو معاملات مفقودة. يمكن تخطي النطاقات الكبيرة غير المعيَّنة باستخدام معلومات جدول الصفحات، وتبقى نطاقات العناوين غير القابلة للقراءة ظاهرة في إحصاءات الفحص.

الربط متحفظ عن قصد. المعرّف الرقمي مثل 1 يختلف عن معرّف السلسلة "1"، والرسائل في عمليات مختلفة لا تُربط تلقائيًا. تُعلَّم التمثيلات المتعددة المتميزة المرتبطة بمعرّف ما على أنها غامضة. لا تعيد علاقات المرشّحات بناء جلسة أو اتجاه رسالة أو خط زمني للتنفيذ بمفردها.

التثبيت

يتطلب Python 3.10+. يتضمن التثبيت اعتماد الإطار المثبَّت، volatility3==2.28.2. أبقِ دليل plugins/ في المستودع متاحًا: تُثبَّت حزمة Python عبر pip، بينما يحمّل -p plugins محوّلات Volatility.

git clone https://github.com/Kowntaewook/MCPTrace.git
cd MCPTrace
python -m venv .venv

فعّل البيئة لصدفتك:

  • Windows PowerShell: .\.venv\Scripts\Activate.ps1
  • Linux/macOS shell: source .venv/bin/activate

ثم ثبّت MCPTrace:

python -m pip install .

الاستخدام

شغّل الأمثلة التالية من جذر المستودع مع تفعيل البيئة الافتراضية. استبدل مسارات الصور ومعرّفات العمليات (PIDs) بأدلتك وعملياتك المستهدفة. قد يعمل عملاء MCP وخوادمه في عمليات منفصلة، لذا افحص كليهما حيثما كان ذلك مناسبًا.

Windows

تحقق من أن Volatility قادر على تفسير الصورة وسرد عملياتها قبل تشغيل MCPTrace. قد يتطلب إعداد رموز Windows الوصول إلى الشبكة.

vol -f windows.raw windows.info.Info
vol -f windows.raw windows.pslist.PsList
mkdir output-windows
vol -p plugins -f windows.raw -o output-windows windows.mcptrace.MCPTrace --pid 4242 5252 --dump

Linux

ضع رموز ISF المطابقة لـ إصدار kernel الدقيق الخاص بالتفريغ في symbols/linux/. إذا تعذّر على linux.pslist.PsList تحديد متطلبات kernel أو الطبقة الخاصة به، فحلّ إعداد الصورة/الرموز قبل تفسير مخرجات MCPTrace.

vol -s symbols -f linux.lime linux.pslist.PsList
mkdir output-linux
vol -p plugins -s symbols -f linux.lime -o output-linux linux.mcptrace.MCPTrace --pid 4242 --dump
  • احذف --pid لفحص جميع العمليات، أو مرّر عدة PIDs: --pid 4242 5252.
  • يُصدّر --dump ملفات JSONL لكل عملية إلى الدليل المحدد بواسطة -o.
  • استخدم vol -p plugins windows.mcptrace.MCPTrace -h (أو المكافئ على Linux) لعرض جميع الخيارات.

للحصول على تمثيل JSON لجدول النتائج الكامل، ضع الخيار العام -r json قبل اسم الإضافة. هذا منفصل عن صادرات JSONL لكل عملية التي ينتجها --dump.

vol -p plugins -f windows.raw -r json windows.mcptrace.MCPTrace --pid 4242 > findings.json

الخيارات الشائعة

الخيارالغرض
--pid 4242 5252تحديد معرّفات العمليات؛ احذفه لفحص جميع العمليات التي يسردها المحوّل.
--dumpتصدير العناصر المعروضة وملخصات الفحص بصيغة JSONL باستخدام الدليل العام -o.
--include-partialتضمين الأجزاء الخام غير المحلّلة دون إعادة بناء الحقول المفقودة.
--include-rpcعرض مرشّحات JSON-RPC العامة أيضًا دون صلة مؤكدة بـ MCP.
--policy PATHتطبيق قواعد محلية على وسائط الأدوات؛ راجع الأمثلة Windows وLinux.
--suspicious-onlyعرض مطابقات السياسة والملخصات؛ يتطلب سياسة غير فارغة.
--max-records Nتحديد الحد الأقصى لسجلات المرشّحات لكل عملية قبل التصفية؛ القيمة الافتراضية: 10000.
--max-object-bytes Nتحديد الحد الأقصى لحجم كائن JSON كامل واحد؛ القيمة الافتراضية: 65536 بايت.
--max-bytes Nتحديد الحد الأقصى للبايتات المفحوصة من نطاق العناوين لكل عملية؛ 0 تعني بلا حد.

تصف نتائج السياسة المطابقات مع القواعد التي يوفّرها المحلّل. ولا تُثبت المطابقة وجود نشاط خبيث. راجع المسارات والمضيفين وأسماء الأدوات في الأمثلة قبل تطبيقها على حالة مختلفة.

قراءة المخرجات

يحتوي ملف مثل mcptrace.pid-4242.jsonl على سجل بيانات وصفية، وسجلات عناصر، وملخص فحص نهائي. تحدد البيانات الوصفية العملية ونظام التشغيل الهدف ومساحة العناوين. وتحتفظ سجلات العناصر بالرسالة المحلّلة والبايتات المستعادة الدقيقة معًا.

الحقولالمعنى
pid، virtual_address، region_startالعملية وموقع الدليل. العناوين هي عناوين افتراضية للعملية، وليست إزاحات في ملف الصورة.
message، method، tool، request_idمحتوى الرسالة المحلّل والحقول المحددة، عند توفرها.
raw_base64، byte_length، raw_sha256البايتات الأصلية وطولها وSHA-256 للتحقق.
state، encodingما إذا كان السجل كاملًا أم جزءًا، وكيفية ترميز بايتاته.
relation، candidate_virtual_addressesمواقع النظير المرشّحة وما إذا كانت العلاقة غامضة.
findingsنتائج فحوص سياسة الوسائط الاختيارية.

للتحقق من عنصر، فكّ ترميز raw_base64، وتحقق من طوله وتجزئته، ثم أعد قراءة ذلك النطاق عبر طبقة ذاكرة العملية المقابلة. قد تؤدي إعادة تنسيق message بصيغة JSON إلى تغيير المسافات البيضاء أو التهريب، لذا استخدم البايتات المحفوظة لإجراء مقارنة دقيقة. تبقى نسخ الذاكرة المختلفة سجلات أدلة منفصلة.

اقرأ ملخص الفحص إلى جانب العناصر. فهو يبلّغ عن المناطق المفحوصة، والبايتات القابلة للقراءة وغير القابلة للقراءة، والمناطق غير الصالحة، والعمليات المتخطّاة، والأخطاء، وأحداث الحدود. قد تتضمن البايتات غير القابلة للقراءة مساحة عناوين محجوزة غير مستخدمة. ولا تُثبت نتيجة بلا رسائل أن نشاط MCP لم يحدث قط.

القياس المرجعي

استخدم القياس المرجعي ثلاث لقطات جديدة لأجهزة Windows Server 2022 افتراضية. شغّل كل جهاز افتراضي زوجين من العميل/الخادم باستخدام Python MCP SDK الرسمي عبر stdio. جرى تبادل حركة المرور الفعلية قبل الحصول على ذاكرة الوصول العشوائي الفعلية باستخدام WinPmem؛ ولم تُحقن رسائل الاختبار في الصورة الناتجة.

أكملت كل حالة 64 استدعاء أداة و133 رسالة منطقية، بما في ذلك التهيئة، وإشعار، واكتشاف الأدوات. تضمّنت الحمولات ASCII، والكورية/الرموز التعبيرية، والأحرف المهرّبة، والمسافات البيضاء، وسلسلة بحجم 2 KiB. وكانت الحالات:

تنزيل الأداة