تتضمن 75% من التطبيقات التجارية تعليمات برمجية مفتوحة المصدر قديمة مع نقاط ضعف

شركة سينوبسيس تحليلها 1253 قاعدة تعليمات برمجية تجارية وخلصت إلى أن جميع التطبيقات التجارية التي تمت مراجعتها تقريبًا (99%) تضمنت مكونًا واحدًا مفتوح المصدر على الأقل، وأن 70% من التعليمات البرمجية الموجودة في المستودعات التي تمت مراجعتها كانت مفتوحة المصدر. وللمقارنة، في دراسة مماثلة أجريت عام 2015، بلغت حصة المصادر المفتوحة 36%.

ومع ذلك، في معظم الحالات، لا يتم تحديث التعليمات البرمجية مفتوحة المصدر الخاصة بطرف ثالث وتحتوي على مشكلات أمنية محتملة - 91% من قواعد التعليمات البرمجية التي تمت مراجعتها تحتوي على مكونات مفتوحة لم يتم تحديثها لأكثر من 5 سنوات أو كانت في نموذج مهجور لـ عامين على الأقل ولا تتم صيانتها من قبل المطورين. ونتيجة لذلك، فإن 75% من التعليمات البرمجية مفتوحة المصدر التي تم تحديدها في المستودعات تحتوي على ثغرات أمنية معروفة لم يتم إصلاحها، ونصفها ينطوي على مستوى عالٍ من الخطر. وفي عينة عام 2018، بلغت نسبة التعليمات البرمجية التي تحتوي على ثغرات أمنية 60%.

وكانت نقطة الضعف الأكثر خطورة شيوعا
مشكلة CVE-2018-16487 (تنفيذ التعليمات البرمجية عن بعد) في المكتبة lodash بالنسبة لـ Node.js، التي تمت مصادفة الإصدارات الضعيفة منها أكثر من 500 مرة. أقدم ثغرة أمنية لم يتم إصلاحها كانت مشكلة في البرنامج الخفي lpd (CVE-1999-0061)، المنقحة في عام 1999.

بالإضافة إلى الأمان في قواعد التعليمات البرمجية للمشاريع التجارية، هناك أيضًا موقف مهمل تجاه الامتثال لشروط التراخيص المجانية.
في 73% من قواعد الأكواد، تم العثور على مشاكل تتعلق بشرعية استخدام المصادر المفتوحة، على سبيل المثال، التراخيص غير المتوافقة (عادةً ما يتم تضمين كود GPL في المنتجات التجارية دون فتح منتج مشتق) أو استخدام الكود دون تحديد ترخيص. 93% من جميع مشكلات الترخيص تحدث في تطبيقات الويب والهاتف المحمول. وفي الألعاب وأنظمة الواقع الافتراضي والوسائط المتعددة والبرامج الترفيهية، لوحظت المخالفات في 59% من الحالات.

في المجمل، حددت الدراسة 124 مكونًا مفتوحًا نموذجيًا يتم استخدامها بشكل شائع في جميع قواعد التعليمات البرمجية. الأكثر شيوعًا هي: jQuery (55%)، Bootstrap (40%)، Font Awesome (31%)، Lodash (30%) وjQuery UI (29%). من حيث لغات البرمجة، الأكثر شيوعًا هي JavaScript (تستخدم في 74% من المشاريع)، C++ (57%)، Shell (54%)، C (50%)، Python (46%)، Java (40%)، تايب سكريبت (36%)، سي# (36%)؛ بيرل (30%) وروبي (25%). الحصة الإجمالية للغات البرمجة هي:
جافا سكريبت (51%)، C++ (10%)، جافا (7%)، بايثون (7%)، روبي (5%)، Go (4%)، C (4%)، PHP (4%)، TypeScript ( 4%)، C# (3%)، بيرل (2%)، شل (1%).

المصدر: opennet.ru

إضافة تعليق