← أحدث الأبحاث
💻 computer science

VulnScout-C: A Lightweight Transformer for C Code Vulnerability Detection

تقدم الورقة البحثية نموذج VulnScout-C، وهو نموذج محول (transformer) خفيف الوزن يحتوي على 693 مليون معلمة ومعه مجموعة بيانات منسقة، واللذان يحققان معاً أداءً فائقاً في اكتشاف الثغرات الأمنية في لغة C مقارنة بالنماذج اللغوية الكبيرة والأدوات التجارية، مع تمكين التكامل العملي ومنخفض زمن الاستجابة في سير عمل التطوير.

المؤلفون الأصليون: Aymen Lassoued, Nacef Mbarek, Bechir Dardouri, Bassem Ouni, Qing Li, Fakhri Karray

نُشر 2026-03-31
📖 4 دقيقة قراءة☕ قراءة في استراحة قهوة

المؤلفون الأصليون: Aymen Lassoued, Nacef Mbarek, Bechir Dardouri, Bassem Ouni, Qing Li, Fakhri Karray

البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل

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

لسنوات، حاولت حراس الأمن (أدوات البرمجيات) رصد هذه اللبنات السيئة.

  • الحراس القدامى (المحللون الساكنون - Static Analyzers): هم سريعون ورخيصون، لكنهم شديدو الشك والارتباك. يصرخون "حريق!" في كل مرة يرون فيها علبة كبريت، حتى لو كانت مجرد لعبة. إنهم يطلقون الكثير من الإنذارات الكاذبة لدرجة تجعل عمال المدينة يتجاهلونهم.
  • المحققون العباقرة (نماذج الذكاء الاصطناعي الضخمة): هم أذكياء للغاية. يمكنهم قراءة تاريخ المدينة بأكها وفهم المؤامرات المعقدة. لكنهم عمالقة. يتطلب تشغيلهم محطة طاقة ضخمة، ويستغرقون ساعات للتفكير في لبنة واحدة، وتكلفة توظيفهم باهظة. لا يمكنك وضع نموذج منهم في جيب كل عامل للتحقق من الكود أثناء كتابته.

إليك VulnScout-C: "المحقق الخارق ذو الحجم الجيبي"

قام مؤلفو هذه الورقة البحثية ببناء نوع جديد من حراس الأمن. أطلقوا عليه اسم VulnScout-C. إنه ليس عملاقًا؛ بل هو خبير مدمج وخفيف الوزن مصمم خصيصًا لرصد أخطر الثغرات في كود لغة C.

إليك كيف بنوه، مشروحًا ببساً:

1. العقل: "فريق متخصص" بدلاً من "عام"

معظم نماذج الذكاء الاصطناعي الكبيرة هي مثل العامين الذين يعرفون القليل عن كل شيء (الطبخ، التاريخ، الرياضيات، والبرمجة). لجعل VulnScout-C، أخذ المؤلفون عقلًا ذكيًا (يعتمد على نموذج يسمى Qwen) وأعطوه وظيفة متخصصة.

استخدموا تقنية تسمى خليط الخبراء (Mixture of Experts - MoE). تخيل فريقًا من 25 متخصصًا مختلفًا. عندما تصل قطعة من الكود، لا يستيقظ الفريق بأكمله؛ بل يتم استدعاء خبيرين اثنين فقط وهما الأفضل في التعامل مع تلك المشكلة المحددة.

  • تشبيه: إذا كان الكود يحتوي على "تسريب ذاكرة" (memory leak)، فإنه يستدعي "خبير تسريب الذاكرة". وإذا كان يحتوي على "تجاوز سعة المخزن المؤقت" (buffer overflow)، فإنه يستدعي "خبير تجاوز السعة".
  • النتيجة: النموذج صغير جدًا (69 3 مليون معامل فقط، وهو رقم صغير بالنسبة للذكاء الاصطناعي) وسريع، لكنه يعمل بذكاء العمالقة لأنه يستخدم الخبراء المناسبين فقط للمهمة.

2. أرض التدريب: مجموعة بيانات "VULNSCOUT"

لتعليم هذا المحقق الجديد، احتاجوا إلى مكتبة ضخمة من "مسارح الجريمة" (الكود السيئ) و"المنازل الآمنة" (الكود الجيد).

  • المشكلة: المكتبات الموجودة كانت تفتقر إلى العديد من أنواع الجرائم، أو كانت الأمثلة فيها مزيفة ولا تشبه الواقع.
  • الحل: قاموا ببناء مكتبة جديدة تسمى VULNSCOUT تحتوي على أكثر من 33,000 مثال.
  • نظام "التحقق المزدوج": لم يكتفوا بالثقة في معلم واحد. استخدموا عملية تحقق من خطوتين لضمان دقة كل مثال بنسبة 100%:
    1. قام روبوت رياضي صارم (ESBMC) بفحص الكود.
    2. قام ذكاء اصطناعي ثانٍ فائق الذكاء (GPT-OSS-120B) بفحص الكود أيضًا.
    3. القاعدة: إذا اختلف الروبوت والذكاء الاصطناعي، يتم التخلص من المثال. فقط عندما يقول كلاهما "هذه جريمة بالتأكيد" أو "هذا آمن بالتأكيد"، يتم الاحتفاظ به.
  • تشبيه: الأمر يشبه تعيين قاضيين مختلفين لمراجعة قضية ما. إذا قال أحدهما "مذنب" وقال الآخر "غير مذنب"، فإن القضية تكون مشوشة جدًا لاستخدامها. أنت تحتفظ فقط بالقضايا التي يتفق فيها كلاهما على النتيجة. لقد خلق هذا "المعيار الذهبي" للتدريب.

3. التعلم "الواعي بالرتبة" (Rank-Aware Learning)

تم تعليم النموذج أن يهتم بـ الجرائم المميتة أكثر من الجرائم البسيطة.

  • تشبيه: في المدرسة، إذا سرق طالب قلم رصاص، قد تكتفي بإعطائه تحذيرًا. ولكن إذا حاول حرق المدرسة، فإنك تستدعي الشرطة فورًا.
  • تم تدريب VulnScout-C باستخدام "قائمة أولويات" خاصة (بناءً على قائمة MITRE Top 25 لأضعف الثغرات الخطيرة). يتعلم النموذج أن يكون حذرًا للغاية مع أكثر 25 ثغرة خطورة، مما يضمن عدم تفويته للتهديدات الكبيرة مع استمرار قدرته على كشف الثغرات الصغيرة.

4. النتائج: سريع، رخيص، ودقيق

عندما اختبروا VulnScout-C مقابل العمالقة والأدوات القديمة:

  • السرعة: يمكنه فحص الكود في غضون أجزاء من الثانية. إنه سريع بما يكفي ليعمل داخل محرر النصوص الخاص بالمبرمج أثناء الكتابة، مما يوفر ملاحظات فورية.
  • الدقة: تفوق على نماذج الذكاء الاصطناعي الضخمة والمكلفة (مثل GPT-4) وعلى أدوات التحليل الساكن القديمة. لقد وجد المزيد من الأخطاء الحقيقية وأطلق إنذارات كاذفة أقل.
  • الكفاءة: يستخدم جزءًا ضئيلًا جدًا من طاقة الكمبيوتر المطلوبة للنماذج "العملاقة".

لماذا هذا مهم؟

تخيل أنه يمكنك الحصول على حارس أمن فائق الذكاء في جيبك، يكلف تقريبًا لا شيء لتشغيله، لا يتعب أبدًا، ويمسك بأخطر اللصوص في الكود الخاص بك فورًا.

هذا هو VulnScout-C. إنه يثبت أنك لست بحاجة إلى ذكاء اصطناعي "عملاق" للقيام بعمل رائع؛ بل تحتاج فقط إلى الأدوات الصحيحة، وبيانات التدريب الصحيحة، وتصميم ذكي. إنه يجعل الأمن عالي المستوى متاحًا للجميع، وليس فقط لأولئك الذين يمتلكون حواسيب فائقة القدرة.

غارق في أبحاث مجالك؟

تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.

جرّب Digest →