SEC-bench Pro: Can Language Models Solve Long-Horizon Software Security Tasks?
تقدم هذه الورقة SEC-bench Pro، وهو معيار مرجعي صارم يضم 183 ثغرة أمنية من واقع الحياة في V8 وSpiderMonkey، يكشف أن وكلاء البرمجة القائمين على النماذج اللغوية يعانون في مهام أمن البرمجيات طويلة المدى، حيث يحققون معدل نجاح لا يتجاوز 38.8% حتى مع النماذج الرائدة.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك تقوم بتوظيف فريق من المحققين الأذكياء للغاية والمدعومين بالذكاء الاصطناعي للعثور على الفخاخ المخفية في محرك ألعاب ضخم ومعقد. هذه المحركات (التي تسمى محركات جافا سكريبت - JavaScript engines) هي التي تشغل الأكواد التي تجعل المواقع والتطبيقات تعمل. إذا وجد المحقق فخاً، فعليه أن يوضح بدقة كيفية تفعيله (ما يسمى بـ "إثبات المفهوم" أو PoC) حتى يتمكن مطورو اللعبة من إصلاحه.
تقدم هذه الورقة البحثية اختباراً جديداً صارماً للغاية يسمى SEC-bench Pro ليرى مدى براعة هؤلاء المحققين المدعومين بالذكاء الاصطناعي في العثور على هذه الفخاخ في العالم الحقيقي.
المشكلة في الاختبارات القديمة
كانت الاختبارات السابقة تشبه إعطاء المحقق خريطة كنز معلم عليها بالفعل علامة "X" حيث يوجد الكنز. ربما يقولون له: "اذهب إلى السطر 500 واضغط هذا الزر لتعطيل اللعبة".
- المشكلة: صيد الثغرات في الواقع لا يعمل بهذه الطريقة. المحققون الحقيقيون يتعين عليهم فحص الكود بأكمله، وتحديد مكان احتمال وجود الفخ، ثم محاولة تفعيله دون معرفة مكانه بالضبط. الاختبارات القديمة لم تقيس هذه المهارة الحقيقية؛ بل كانت تقيس فقط ما إذا كان بإمكان الذكاء الاصطناعي اتباع الخريطة.
الاختبار الجديد: SEC-bench Pro
قام المؤلفون ببناء اختبار جديد وأكثر صعوبة باستخدام محركي ألعاب مشهورين: V8 (المستخدم في جوجل كروم) و SpiderMonkey (المستخدم في موزيلا فايرفوكس).
- الإعداد: أخذوا 183 فخاً حقيقياً ومؤكداً وجدها البشر سابقاً.
- البيئة: قاموا بإعادة إنشاء نسخة "آلة الزمن" الدقيقة للبرنامج حيث كان الفخ موجوداً، بالإضافة إلى النسخة التي تم فيها إصلاح الفخ.
- القواعد: تم إعطاء وكلاء الذكاء الاصطناعي الكود الخام ووصفاً غامضاً للمشكلة. كان عليهم:
- تحديد مسار الكود المحدد المؤدي إلى الفخ.
- كتابة نص برمجي (PoC) لتفعيل الانهيار (crash).
- إثبات أن هذا النص يكسر النسخة القديمة فقط ويتم إصلاحه في النسخة الجديدة.
"حكم الصور الثلاث"
هذا هو الجزء الأهم في اختبارهم الجديد. في الماضي، إذا تسبب الذكاء الاصطناعي في أي انهيار، كان يحصل على نقطة. لكن الذكاء الاصطناعي قد يكسر شيئاً آخر في اللعبة بالخطأ لم يكن هو الفخ المحدد الذي يبحث عنه.
يستخدم SEC-bench Pro حكم الصور الثلاث (حكم ذكاء اصطناعي متطور):
- الصورة 1 (الفخ): هل يكسر النص البرمجي النسخة القديمة؟
- الصورة 2 (الإصلاح): هل يتوقف النص البرمجي عن كسر النسخة الجديدة (حيث تم تطبيق الإصلاح)؟
- الصورة 3 (الأحدث): هل يكسر النص البرمجي أحدث نسخة (حيث قد تكون هناك إصلاحات أخرى حدثت)؟
إذا تسبب الذكاء الاصطناعي في انهيار في النسخة القديمة ولكنه تسبب أيضاً في انهيار النسخة المُصلحة، فإن الحكم سيقول: "أنت لم تجد الفخ المحدد؛ لقد كسرت اللعبة بشكل عام فقط". هذا يمنع الذكاء الاصطناعي من الحصول على نقاط نتيجة أخطاء غير متعلقة بالفخ الأصلي.
النتائج: المحققون الآليون يعانون
اختبرت الورقة ثلاثة من أفضل المحققين الآليين (المدعومين بنماذج مثل GPT-5.4 و Opus 4.6 و Kimi-K2.6). وإليك ما حدث:
- لوحة النتائج: حتى أذكى ذكاء اصطناعي لم يستطع حل سوى حوالي 32% إلى 39% من الفخاخ. وهذا يعني أنهم فشلوا في أكثر من 60% من الحالات.
- "المبتدئ مفتوح المصدر": نجح ذكاء اصطناعي أرخص ومفتوح المصدر (Kimi-K2.6) في حل حوالي 11.7% فقط من فخاخ V8.
- تأثير العمل الجماعي: من المثير للاهتمام أن المحققين الآليين وجدوا فخاخاً مختلفة. عندما جمعت نتائج أفضل اثنين من الذكاء الاصطناعي، وجدا معاً حوالي 48% من فخاخ SpiderMonkey، رغم أن كلاً منهما لم يستطع فعل ذلك بمفرده. إنهما يشبهان محققين لديهما تخصصات مختلفة؛ أحدهما بارع في إيجاد نوع معين من الأدلة، والآخر بارع في نوع مختلف.
لماذا فشلوا؟
وجدت الورقة سببين رئيسيين لمعاناة الذكاء الاصطناعي:
- الكثير من التخمين (نهج "أطلق النار وانسَ"): حاول أحد أنظمة الذكاء الاصطناي (Claude) توليد آلاف النصوص البرمجية. معظمها لم يكسر أي شيء في الواقع، أو كسرت شيئاً خاطئاً. كان الأمر يشبه رمي مليون سهم على لوحة الأهداف على أمل أن يصيب أحدها مركز الهدف.
- الكثير من الحذر (نهج "المفكر المفرط"): كان نظام آخر (Codex) حذراً جداً. كان يحلل الكود، ويقرر أن الفخ قد يكون هناك، ولكن إذا لم يستطع إثبات ذلك بنسبة 100% قبل التقديم، فإنه يستسلم ويقول "لا يمكنني القيام بذلك". لقد فاته الكثير من الفخاخ لأنه كان يخشى الوقوع في الخطأ.
الخلاصة الكبرى
تخلص الورقة إلى أنه بينما يتحسن الذكاء الاصطناعي في كتابة الكود، فإنه لا يزال ليس جيداً جداً في العملية الطويلة والصعبة المتمثلة في البحث عن الثغات الأمنية في البرمجيات المعقدة والواقعية.
أفضل ذكاء اصطناعي حالي يمكنه العثور على بعض الفخاخ، لكنه يفتقد الكثير منها. يثبت المعيار الجديد (SEC-bench Pro) أننا بحاجة إلى أدوات أفضل لمساعدة هؤلاء الوكلاء على ربط النقاط بين الكود والفخاخ المخفية، بدلاً من مجرد الأمل في أن يحالفهم الحظ بحدوث انهيار.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.