Generating Proof-of-Vulnerability Tests to Help Enhance the Security of Complex Software
تقدم هذه الورقة PoVSmith، وهو نهج قائم على الوكيل يستفيد من النماذج اللغوية الكبيرة، وتحليل مسار الاستدعاء، والتغذية الراجعة للتنفيذ لتوليد اختبارات إثبات ثغرات عالية الجودة تلقائياً، حيث نجح في تحديد 96% من نقاط الدخول القابلة للوصول على مستوى التطبيق وإنتاج 55% من اختبارات الهجوم القابلة للتنفيذ للتبعيات البرمجية المعقدة.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك مالك منزل (التطبيق) اشتريت قفلاً ذكيًا عالي التقنية (المكتبة) من شركة مصنعة خارجية. وفي أحد الأيام، سمعت أخبارًا تفيد بأن القفل به ثغرة: إذا قام شخص ما بكتابة رمز غريب معين، فقد يفتح القفل نفسه، مما يسمح للصوص بالدخول.
المشكلة هي أن مجرد معرفة أن القفل به ثغرة ليس كافيًا لمعرفة ما إذا كان منزلك في خطر بالفعل. فربما يكون قفلك الذكي مثبتًا بطريقة لا يمكن لأي شخص الوصول إلى ذلك الزر المحدد من خلالها. أو ربما يقوم نظام الأمان في منزلك بحظر ذلك الرمز الغريب قبل أن يصل حتى إلى القفل.
غالبًا ما يتلقى المطورون تقارير تقول: "مهلًا، برنامجك يستخدم مكتبة بها خطأ معروف!" ولكنهم يحتاجون إلى إثبات ثغرة (PoV): وهو عرض عملي ملموس يوضح بالضبط كيف يمكن لمخترق أن يقتحم منزلهم الخاص باستخدام هذا القفل المعيب. إن صنع هذه العروض التوضيحية يدويًا يشبه محاولة فتح قفل باستخدام مشبك ورق وأنت معصوب العينين—الأمر بطيء، وصعب، وغالبًا ما يكون مستحيلاً.
يقدم هذا البحث PoVSmith، وهو "الحداد الرقمي" الجديد الذي يقوم بأتمتة هذه العملية برمتها.
كيف يعمل PoVSmith: المحقق ذو الخطوات الأربع
فكر في PoVSmith كفريق من المحققين المدعومين بالذكاء الاصطناي يعمل في أربع مراحل ليرى ما إذا كان منزلك معرضًا للخطر حقًا.
المرحلة 1: صانع الخرائط (تحليل مسار الاستدعاء)
أولاً، يحتاج الذكاء الاصطناعي إلى إيجال المسار من باب منزلك الأمامي إلى القفل المعيب. يقوم بمسح منزلك بالكامل (الكود) ليجد كل الأبواب العامة (الدالة العامة/public method) التي تؤدي في النهاية إلى ذلك الزر المعيب في القفل.
- التشبيه: تخيل محققًا يسير في كل غرفة في منزلك، يتتبع كل ممر ومقبض باب، ليرى ما إذا كان هناك مسار واضح من الشرفة الأمامية إلى آلية القفل المعيبة.
- النتيجة: وجد الذكاء الاصطناعي 158 "بابًا أماميًا" مختلفًا في حالات الاختبار التي يمكن أن تؤدي إلى القفل المعيب، ونجح في رسم المسار بدقة بنسبة 96%.
المرحلة 2: المزور (توليد الاختبار)
بمج once العثور على المسار، يحتاج الذكاء الاصطناعي إلى صنع "مفتاح" (اختبار) لتجربة القفل. ينظر إلى مفتاح عينة صنعه مصنع القفل (اختبار نموذجي) يثبت أن القفل معيب بشكل عام. ثم يحاول تزوير مفتاح جديد يناسب باب منزلك المحدد ويسلك الممر المحدد الذي وجده في المرحلة الأولى.
- التشبيه: الذكاء الاصطناعي مثل مزور محترف يأخذ مفتاحًا رئيسيًا ويحاول قطع نسخة مطابقة تناسب بابك الخاص. إذا تعثرت المحاولة الأولى، فلا يستسلم الذكاء الاصطناعي؛ بل يبحث عن سبب الفشل، ويشحذ المفتاح، ثم يحاول مرة أخرى.
- النتيجة: نجح في تزوير 152 مفتاحًا. ومع ذلك، 84 منها فقط (55%) نجحت بالفعل في فتح الباب. المفاتلة الأخرى إما لم تناسب الباب أو لم تفعّل الثغرة.
المرحلة 3: تجربة التشغيل (التجميع والتنفيذ)
لا يكتفي الذكال الاصطناعي بالتخمين حول ما إذا كان المفتاح يعمل؛ بل يقوم فعليًا بتجربة تدوير القفل. يقوم ببناء الاختبار تلقائيًا وتشغيله في بيئة آمنة ومعزولة ليرى ما سيحدث.
- التشبيه: هذه هي "تجربة القيادة". يأخذ الذكاء الاصطناد المفتاح المزور، يضعه في القفل، ويديره. يسجل الصوت، والحركة، وما إذا كان الباب قد فُتح.
- النتيجة: تلتقط هذه الخطوة "الهلوسات" حيث ظن الذكاء الاصطناعي أنه صنع مفتاحًا يعمل، بينما كان في الواقع مجرد قطعة بلاستيك.
المرحلة 4: القاضي (تقييم النموذج اللغوي الكبير - LLM)
أخيرًا، يقوم قاضٍ ذكي للغاية (نموذج لغوي كبير) بمراجعة فيديو تجربة التشغيل. ينظر إلى السجلات ويقرر: "هل كسر هذا المفتاح القفل حقًا، أم أن الباب ظل مغلقًا؟"
- التشبيه: يشاهد قاضٍ بشري لقطات الأمن ويكتب حكمًا: "مذنب" (الثغرة حقيقية ويمكن الوصول إليها) أو "غير مذنب" (الاختبار فشل أو أن القفل آمن).
- النتيجة: كان القاضي صحيحًا بنسبة 68% من الوقت. ورغم أنه ليس مثاليًا، إلا أنه أفضل بكثير من عدم فعل أي شيء.
المكاسب الكبرى
اختبر الباحثون هذا النظام على 33 "منزلًا" و"قفلًا" برمجيًا مختلفًا. وإليكم ما وجدوه:
- إنه جهد جماعي: يعمل النظام بشكل أفضل عندما يستخدم مبرمجًا متخصصًا في الذكاء الاصطناعي (يسمى Codex) للقيام بالعمل الشاق في كتابة الكود. وعندما جربوا مبرمجين آخرين للذكاء الاصطناعي، كانت النتائج أسوأ بكثير.
- أفضل من المنافسين: قارنوا PoVSmith بأفضل أداة موجودة في العالم حاليًا. تمكنت الأداة القديمة من إنشاء "مفاتيح" تعمل لـ 5 منازل فقط من أصل 33. أما PoVSmith فقد فعل ذلك لـ 22 من أصل 33. إنه تحسن هائل.
- تأثير في العالم الحقيقي: كانت الاختبارات التي أنشأها PoVSmith جيدة جدًا لدرجة أنها وجدت ثغرات لم يتم الإبلاغ عنها من قبل. حتى أن الفريق قدم تقارير رسمية (تسمى CVEs) للتحذير من هذه المخاطر الجديدة.
الخلاصة
PoVSmith هو أداة تساعد المطورين على التوقف عن التخمين. بدلًا من التساؤل: "هل خطأ المكتبة هذا خطير على تطبيقي؟"، يقوم النظام تلقائيًا ببناء محاكاة، ويحاول اختراقها، ويخبرك: "نعم، إليك بالضبط كيف يمكن للمخترق أن يقتحم"، أو "لا، إعدادك الخاص آمن".
إنه يحول التحقيق الأمني المعقد واليدوي إلى عملية مؤتمتة وقابلة للتكرار، مما يساعد في جعل سلسلة التوريد البرمجية أكثر أمانًا للجميع.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.