Security Incentivization: An Empirical Study of how Micropayments Impact Code Security
تُثبت هذه الدراسة التجريبية أن ربط الحوافز على مستوى الفريق بمقاييس الأمن المؤتمتة يقلل بشكل كبير من كثافة المشكلات الأمنية في الكود، لا سيما في المكونات الخلفية (back-end)، دون تضخيم حجم الكود بشكل مصطنع، مما يؤكد فعالية المكافآت بأسلوب المدفوعات الصغيرة (micropayment) لتحسين أمن البرمجيات.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك تدير حصة تعليمية للطهي حيث يتعين على الطلاب إعداد وجبة معقدة متعددة الأصناف. عادةً، يقوم المعلم بتقييمهم فقط بناءً على مدى لذة الطعام ومدى أناقة تقديمه. الأمن يشبه "سلامة الغذاء" في المطبخ: فهو لا يجعل الطعام يبدو ألذ، وإذا قمت به بشكل صحيح، فلن يلاحظه أحد. الطعام ببساطة لن يمرض الناس. ولأن الطلاب لا يرون فائدة ملموسة، فإنهم غالباً ما يتخطون خطوات السلامة لتوفير الوقت.
هذه الورقة البحثية تطرح سؤالاً بسيطاً: ماذا يحدث إذا منحنا الطلاب مكافأة خاصة مقابل الحفاظ على سلامة مطبخهم؟
التجربة: حكاية مطبخين
قام الباحثون بإعداد حصة تعليمية للطهي استمرت فصلاً دراسياً كاملاً، ضمت 84 طالباً مقسمين إلى 14 فريقاً. قاموا بتقسيم الفصل إلى مجموعتين:
- مجموعة "المذاق فقط" (المجموعة الضابطة): قيل لهؤلاء الطلاب: "ستحصلون على مكافأة إذا قللتم من عدد المكونات الفوضوية وغير المنظمة (جودة الكود العامة) في مطبخكم".
- مجموعة "السلامة أولاً" (مجموعة التجربة): قيل لهؤلاء الطلاب: "ستحصلون على مكافأة إذا قللتم من عدد المخاطر الأمنية (الثغرات الأمنية) في مطبخكم".
لقياس ذلك، استخدم الباحثون فريقاً من "مفتشي المطبخ" الآليين (أدوات برمجية تسمى Bearer وDetekt وmobsfscan). قام هؤلاء المفتشون بفحص كود الطلاب (الوصفات) كل بضعة أسابب لحساب عدد المخاطر الأمنية الموجودة.
الآلية: "درجة السلامة"
بدلاً من مجرد عدّ عدد المخاطر، نظر الباحثون إلى التحسن.
- تخيل أن طالباً بدأ بـ 100 خطر أمني.
- إذا قام بإصلاح 50 منها، فإن "درجة السلامة" الخاصة به ترتفع، ويحصل على مكافأة.
- والأهم من ذلك، أنهم لم يكتفوا بعدّ إجمالي عدد المخاطر؛ بل عدّوا المخاطر لكل سطر من الوصفة. هذا لضمان عدم قيام الفرق بمجرد كتابة ملايين الأسطر من الكود الفوضوي لإخفاء مشاكلهم. كان عليهم بالفعل جعل الكود أكثر نظافة.
النتائج: الجزء الخلفي مقابل الجزء الأمامي
وجدت الدراسة نتائج رائعة يمكن فهمها من خلال تشبيه "منطقة تقديم الطعام" مقابل "منطقة المطبخ":
- منطقة تقديم الطعام (التطبيق/الواجهة): هذا هو الجزء الذي يراه الزبائن في المطعم - القائمة، والنادل، والديكورات. في التجربة، كان هذا هو تطبيق الهاتف المحمول (المكتوب بلغة Kotlin).
- منطقة المطبخ (الخادم/السيرفر): هذا هو المطبخ، والمخازن، والسباكة. في التجربة، كان هذا هو الخادم (المكتوب بلغة Java).
ماذا حدث؟
- مجموعة السلامة هي الفائزة: الطلاب الذين كوفئوا على السلامة أنتجوا بالفعل كوداً يحتوي على مخاطر أمنية أقل بكثير من المجموعة التي كوفئت على الترتيب العام.
- المطبخ كان أنظف: "منطقة المطبخ" (الخادم) في مجموعة السلامة أصبحت نظيفة تماماً تقريباً. وبحلول نهاية الفصل الدراسي، كانت خوادمهم تحتوي على شبه انعدام من المخاطر الأمنية.
- صالة الطعام كانت لا تزال فوضوية: ومن المثير للاهتمام أن "منطقة تقديم الطعام" (التطبيق) في مجموعة السلامة كانت لا تزال تحتوي على بعض المخاطر، وإن كانت أقل من المجموعة الضابطة. يبدو أن الطلاب ركزوا جهدهم الإضافي على الخادم (المطبخ) لأن ذلك هو المكان الذي يحدث فيه "العمل الشاق" للأمن، أو ربما لأن المطبخ بدا أكثر أهمية لاستمرار المشروع.
- لا يوجد غش: لم يقم الطلاب بمجرد كتابة المزيد من الكود لتمييع المشكلة. فقد نما حجم الكود الذي كتبوه بنفس المعدل لكلا المجموعتين. مجموعة السلامة جعلت الكود الخاص بها أفضل فقط، وليس أكبر.
الخلاصة
تخلص الورقة إلى أنه إذا منحت المطورين مكافأة واضحة وقابلة للقياس لإصلاح الثغرات الأمنية، فإنهم سيقومون بإصلاحها بالفعل. الأمر يشبه قولك لطاهٍ: "إذا وصلت بالمطبخ إلى صفر من مخالفات الصحة، فستحصل على مكافأة". حينها سيبدأ الطاهي فجأة في تنظيف الأرضيات وفحص درجات حرارة الثلاجة.
ومع ذلك، أشار الباحثون أيضاً إلى أن هذه كانت حصة لطلاب، وليس طهاة محترفين في مطعم حقيقي. وبينما نجحت الطريقة في الفصل الدراسي، فإنهم يقترحون أننا بحاجة لمعرفة ما إذا كان ذلك سيعمل في العالم الحقيقي مع محترفين يتقاضون أجوراً ومشاريع طويلة الأمد.
باخت-صار: المال (أو الدرجات) يتحدث. إذا دفعت للناس ليكونوا آمنين، فسيكونون أكثر أماناً، خاصة في الأجزاء التي تمثل "المطبخ" من البرمجيات، حتى لو كانت أجزاء "صالة الطعام" لا تزال بحاجة إلى القليل من العمل.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.