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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
linux-kernel-codex-harness — # أداة بحث عن ثغرات نواة لينكس مبنية على الأدلة أداة بحث عن ثغرات نواة لينكس تعتمد على الأدلة، استُخدمت في التحقيق في الثغرة الأمنية CVE-2026-31720 | Kitploit
أدوات/GitHubGitHub/foxirain/linux-kernel-codex-harness
التحليل الثابتتحليل الثغرات الأمنيةالاختبار العشوائيأمن الذكاء الاصطناعي
GitHubfoxirain/linux-kernel-codex-harness

linux-kernel-codex-harness

# أداة بحث عن ثغرات نواة لينكس مبنية على الأدلة أداة بحث عن ثغرات نواة لينكس تعتمد على الأدلة، استُخدمت في التحقيق في الثغرة الأمنية CVE-2026-31720

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
45منذ 2 أشهرلم تتم المراجعة بعد
مشاركة

Kernel Codex Harness

한국어 | English

CI

أداة بحث · الاستيراد الأصلي: 3 أبريل 2026 · مراجعة التوثيق: 11 يوليو 2026

الفلسفة الأساسية — الإشارة الخارجية
دع الملاحظات القابلة لإعادة الإنتاج خارج استدلال النموذج توجّه الانتباه؛ ولا تخلط أبدًا بين الأولوية والإثبات.

حالة المشروع. هذا المستودع هو إصدار مبكر من بيئة البحث المدعومة بـ LLM التي تم بناؤها واستخدامها للتحقيق الفعلي في ثغرات نواة Linux. تم استخدام هذا الإصدار لاكتشاف الثغرة المُعلنة باسم CVE-2026-31720. تقوم البيئة بترتيب أولويات أهداف التحقيق ولكنها لا تثبت الثغرات تلقائيًا ولا تضمن أمان النواة؛ فالتحقق النهائي والإبلاغ يتمان بواسطة البشر.

الملخص

الملخص— عند ترك LLM يستكشف قاعدة بيانات ضخمة مثل نواة Linux مباشرة، يتشتت السياق بسرعة، ويحدث خلط سهل بين وجود واجهات برمجية خطرة وإمكانية الاستغلال الفعلي. يعرّف Kernel Codex Harness هذه المشكلة ليس كمسألة اكتشاف تلقائي للثغرات، بل كمسألة تحديد أولويات التحقيق والتنسيق القائم على الحالة. يطلق هذا المشروع على المبدأ الذي يتحكم في انتباه النموذج من خلال ملاحظات قابلة لإعادة الإنتاج تُحسب خارج استدلال LLM اسم الإشارة الخارجية. يتم دمج مسارات النواة، وحدود مساحة المستخدم، والإشارات الثابتة المتعلقة بالعمر الافتراضي (lifetime) ونسخ المستخدم (usercopy) وعدادات المرجعية (refcount) والحجم، مع ذكاء اختيار اختياري من syzbot، لترتيب الملفات المرشحة، ثم تحويل كل مرشح إلى حزمة مطالبات (prompt) ضيقة. تستخدم المراجعة اليدوية والطيار الآلي القائم على ميزانية الوقت نفس عقد الاستجابة وحالة الجلسة. تم استخدام هذه البيئة في تحقيق فعلي في نواة Linux لاكتشاف كتابة خارج الحدود على المكدس (stack out-of-bounds write) في مسار صوت USB gadget، وقد أُعلن عن هذا الخلل باسم CVE-2026-31720. هذا التنفيذ ليس محللًا ثابتًا دقيقًا، بل هو سير عمل بحثي يحد من نطاق تحقيق LLM باستخدام استدلالات قابلة للتفسير، وتتطلب جميع النتائج إعادة تحقق بشرية من قابلية الوصول (reachability) وكسر الثوابت (invariant break) والأثر الملموس (concrete impact).

مصطلحات الفهرس— نواة Linux، أبحاث الثغرات، الإشارة الخارجية، تنسيق LLM، تحديد الأولويات الاستدلالي، syzbot، تحليل البرامج، Codex.

I. المقدمة

هناك نوعان من مشاكل الحجم في مراجعة أمان نواة Linux. أولاً، شجرة المصدر الكاملة كبيرة جدًا بحيث لا يمكن تغطيتها في سياق LLM واحد. ثانيًا، الإشارات مثل copy_from_user، وموزعات الذاكرة (allocators)، وعدادات المرجعية (refcount)، والأقفال (locks) شائعة ولكنها لا تعني بحد ذاتها وجود ثغرة. يجب على المحلل أولاً تحديد "أين ينظر"، ثم إثبات قابلية الوصول من مساحة المستخدم والانتقالات المحددة للحالة بشكل منفصل.

الفلسفة الأساسية لهذا المشروع هي الإشارة الخارجية.

لا نترك LLM يقرر بنفسه أين ينظر. الإشارات القابلة لإعادة الإنتاج خارج استدلال النموذج هي التي توزع الانتباه، لكن استنتاجات الثغرات تُحدد فقط من خلال أدلة قابلية الوصول والثوابت.

لذلك، لا تجعل البيئة النموذج يستكشف النواة بأكملها بشكل غامض. فهي ترتب الملفات حسب الأولوية، وتقدم فرع تحقيق واحد فقط في كل مرة، وتطلب بنية الأدلة قبل الاستنتاجات.

II. الإشارة الخارجية ومبادئ التصميم

أ. الإشارة الخارجية قبل استدلال النموذج

الإشارة الخارجية ليست حكمًا يولده LLM، بل هي ملاحظة تُحدد قبل تشغيل النموذج ويمكن إعادة حسابها من نفس شجرة المصدر والملف الشخصي (profile) وملفات syzbot JSON المخزنة. أوزان المسارات، ونتائج التعبيرات النمطية، والتداخل المخزن مع syzbot هي أمثلة على ذلك. تُستخدم هذه الإشارات فقط لترتيب المرشحين وسياق المطالبات، ولا يتم ترقيتها إلى حكم أو إثبات.

تشير الإشارة الخارجية في هذا المستند إلى فلسفة المشروع بأكملها. نموذج البيانات ExternalSignal في الكود يمثل حاليًا فقط الإشارات المشتقة من syzbot، لذا فإن نطاق المصطلحين مختلف.

ب. تحديد الأولوية ليس إثباتًا

نتائج التعبيرات النمطية، والمسارات عالية الخطورة، والتداخل مع syzbot كلها إشارات لترتيب التحقيق. حتى لو كانت النتيجة عالية، إذا كانت مسارات الاستدعاء الفعلية، والصلاحيات، وإعدادات النواة، ومساحات الأسماء (namespaces)، وتوافر الأجهزة لا تسمح بوصول المهاجم، فهي ليست نتيجة أمنية.

ج. قابلية الوصول قبل فئة الثغرة

يفحص التدقيق أولاً الحدود التي تبدأ من مساحة المستخدم مثل syscall، وioctl، وnetlink، وprocfs، وأنظمة الملفات، وBPF، وخطافات برامج التشغيل (driver hooks). فقط بعد ذلك يتم تقييم فئات الثغرات مثل UAF، وOOB، وrefcount، والسباق (race)، وتسريب المعلومات (info leak)، وفحوصات الصلاحيات (capability checks).

د. فرع تحقيق واحد في كل مرة

تقتصر وحدة التحقيق الواحدة افتراضيًا على ملف واحد ومسارات الاستدعاء والتفكيك والتحرير القريبة منه. يُسمح بمتابعة يدوية واحدة أو اثنتين كحد أقصى يوصي بها النموذج. هذا القيد ليس لتقليل القدرة الاستكشافية، بل للحفاظ على الاستنتاجات ضمن نطاق قابل للتحقق.

هـ. الأدلة قبل الثقة

تتطلب المطالبات أن يشرح أي finding قوي العناصر التالية على الأقل:

  1. نقطة دخول يمكن للمهاجم الوصول إليها (attacker-reachable entrypoint)،
  2. حقل يتحكم فيه المهاجم أو انتقال في العمر الافتراضي (lifetime transition)،
  3. ثابت (invariant) للكائن أو الطول أو الحالة يتم كسره،
  4. أثر ملموس مثل التلف (corruption) أو التسريب (leak) أو تصعيد الصلاحيات (privilege escalation)،
  5. سبب عدم منع الفحوصات الحالية للهجوم.

إذا كانت الأدلة غير كافية، يعيد النموذج هدفًا واحدًا واحدًا للتحقق التالي بدلاً من الادعاء بقوة بوجود ثغرة. هذا هو عقد الأدلة على مستوى المطالبة (prompt-level evidence contract)، والمحلل الحالي لا يتحقق تلقائيًا من اكتمال كل دليل. بما أن عملية الاستيعاب (ingestion) توحد الحكم والهدف التالي، فإن التحقق النهائي من الأدلة يقع على عاتق البشر.

و. النسب التصميمي

انطلق تدفق التحقيق الأولي من فكرة التحليل لكل ملف، وتوسيع السياق المحدود، والمخرجات المنظمة التي استخدمها vulnhuntr من Protect AI [1]. في هذا المشروع، لم يتم تطبيق ذلك مباشرة على تحليل تطبيقات Python، بل تمت إعادة تصميمه حول سطح النواة الذي يمكن الوصول إليه من مساحة المستخدم، والعمر الافتراضي لكائنات النواة، ومسارات التفكيك، والتداخل مع syzbot. على وجه الخصوص، فصل إشارات الأولوية عن إثبات الثغرات، والتحقق من قابلية الوصول قبل فئة الثغرة هما خيارا التصميم الأساسيان لبيئة النواة هذه.

III. بنية النظام

External Signal architecture for Kernel Codex Harness

الشكل 1. تحوّل طبقة الإشارة الخارجية الملاحظات المحسوبة قبل استدلال النموذج إلى وحدات مراجعة مرتبة. إنها توزع الانتباه ولكنها لا تثبت وجود ثغرة.

الجدول الأول — مسؤوليات الوحدات الرئيسية

الوحدةالمسؤولية
targeting.pyاستكشاف ملفات النواة وتسجيل درجات المسارات والأنماط وإشارات syzbot
models.pyنماذج البيانات Candidate وSignal وExternalSignal المشتقة من syzbot
bundle.pyإنشاء البيان (manifest) وفهرس الجلسة وحزم المطالبات/المقتطفات
prompting.pyمطالبات تدقيق النواة المرتكزة على قابلية الوصول والثوابت
session.pyتخزين حالة المراجعات المعلقة والسجل وعمق المتابعة
ingest.pyتوحيد الحكم الصارم والهدف التالي
autopilot.pyإدارة codex exec القائم على ميزانية الوقت والسجلات والأرشيف والنتائج
syzbot.pyجمع صفحات syzbot العامة وإنشاء ذاكرة تخزين مؤقتة محلية بصيغة JSON
cli.pyربط الأوامر مثل scan وinspect وcodex وloop وautopilot

IV. المنهجية

أ. اكتشاف المرشحين وتسجيل الدرجات

يجتاز الماسح ملفات .c و.h ضمن دليل التضمين (include directory) في الملف الشخصي. تتكون درجة أولوية الملف f من الناحية المفاهيمية مما يلي:

Score(f) = Σ path_weight(f)
         + Σ line_signal_weight(f)
         + Σ syzbot_overlap_weight(f)
تنزيل الأداة