المشاكل الناجمة عن تقارير الضعف التي أعدتها أدوات الذكاء الاصطناعي

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

يدفع مشروع Curl مكافآت لتحديد نقاط الضعف الجديدة وقد تلقى بالفعل 415 تقريرًا عن مشكلات محتملة، تم تأكيد 64 منها فقط على أنها نقاط ضعف و77 على أنها أخطاء غير أمنية. وبالتالي، فإن 66% من جميع التقارير لم تحتوي على أي معلومات مفيدة ولم تستغرق سوى وقتاً من المطورين كان من الممكن إنفاقه على شيء مفيد.

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

يتم إعطاء مثالين لمثل هذه التقارير المهملة. في اليوم السابق للكشف المخطط عن معلومات حول ثغرة أكتوبر الخطيرة (CVE-2023-38545)، تم إرسال تقرير عبر Hackerone يفيد بأن التصحيح مع الإصلاح أصبح متاحًا للعامة. في الواقع، احتوى التقرير على مزيج من الحقائق حول مشاكل مماثلة ومقتطفات من المعلومات التفصيلية حول نقاط الضعف السابقة التي جمعها مساعد جوجل للذكاء الاصطناعي Bard. ونتيجة لذلك، بدت المعلومات جديدة وذات صلة، ولم يكن لها أي صلة بالواقع.

يتعلق المثال الثاني برسالة تم تلقيها في 28 ديسمبر حول تجاوز سعة المخزن المؤقت في معالج WebSocket، أرسلها مستخدم قام بالفعل بإبلاغ مشاريع مختلفة حول الثغرات الأمنية من خلال Hackerone. كوسيلة لإعادة إنتاج المشكلة، تضمن التقرير كلمات عامة حول تمرير طلب معدل بقيمة أكبر من حجم المخزن المؤقت المستخدم عند النسخ باستخدام strcpy. وقدم التقرير أيضًا مثالاً على التصحيح (مثال على استبدال strcpy بـ strncpy) وأشار إلى رابط إلى سطر الكود "strcpy(keyval, randstr)"، والذي يحتوي، وفقًا لمقدم الطلب، على خطأ.

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

المصدر: opennet.ru

إضافة تعليق