حتى وقت قريب ، في مقالاتنا ، وضعنا PVS-Studio كأداة للكشف عن الأخطاء في التعليمات البرمجية. في الوقت نفسه ، لم نفكر تقريبًا في PVS-Studio في سياق الأمان. دعنا نحاول إصلاح هذا الموقف قليلاً ونلقي نظرة على الأداة من حيث اختبار أمان التطبيق وممارسات DevSecOps.
PVS-Studio هي أداة لاختبار أمان التطبيق الثابت (اختبار أمان التطبيق الثابت ، SAST). بعبارة أخرى ، لا يكتشف محلل PVS-Studio الأخطاء المطبعية والرمز الميت والأخطاء الأخرى فحسب ، بل يكتشف أيضًا الثغرات المحتملة.
تعمل الأداة في أنظمة التشغيل Windows و Linux و macOS وتحلل رمز البرامج في C و C ++ و C #. بحلول نهاية عام 2018 ، من المخطط دعم لغة جافا.
من أجل راحة المتخصصين الذين سيستخدمون PVS-Studio كأداة SAST ، يعرض المحلل تحذيراته بشأن
تعداد الضعف العام ،
معايير ترميز SEI CERT ، كما يدعم معيار
MISRA (قيد التنفيذ حاليًا).
جداول الامتثال
لتشخيص PVS-Studio لمعايير مختلفة:
- الامتثال CWE
- الامتثال SEI CERT
- دعم MISRA (نخطط لتطبيقه قبل نهاية 2018)
التصنيف الأكثر شيوعًا لتنبيهات أداة SAST هو تعداد الضعف العام (CWE). دعونا نرى ، أستخدم لغة CWE كمحلل PVS-Studio يساعد على منع الثغرات الأمنية.
إذا لجأنا إلى قاعدة بيانات الثغرات الأمنية المعروفة (
CVE ) ، فقد اتضح أن سبب الثغرات في البرامج غالبًا ليس بعض العيوب الأمنية ، ولكن أخطاء البرامج العادية. يؤكد المعهد الوطني للمعايير والتكنولوجيا (NIST) ذلك بقوله أن 64 ٪ من ثغرات البرامج ترجع إلى أخطاء التعليمات البرمجية.
إنها مثل هذه الأخطاء التي يمكن أن تؤدي إلى نقاط ضعف موصوفة في CWE. وبناءً على ذلك ، إذا كان من الممكن تصنيف الخطأ على أنه CWE ، فهناك احتمال أن يتم استغلاله على أنه ثغرة ويملأ قائمة CVE في النهاية. للتوضيح ، يمكنك استخدام صورة مسار التحويل:
هناك العديد من الأخطاء. البعض منهم خطير من وجهة نظر السلامة ، وبالتالي يتم تصنيفهم وفقًا لـ CWE. يمكن استغلال بعض أخطاء CWE وهي نقاط ضعف.
نعم ، من الناحية العملية ، فإن جزءًا صغيرًا جدًا من أخطاء CWE التي تم العثور عليها تعتبر خطيرة وهي نقاط ضعف. ومع ذلك ، إذا كنت تقوم بتطوير تطبيقات مهمة للأمان وتهتم بأمان المستخدم ، فيجب أن تأخذ هذه الأخطاء على محمل الجد. من خلال إزالة أخطاء CWE ، فإنك تحمي تطبيقك من العديد من نقاط الضعف.
الآن أصبحت العلاقة بين الأخطاء ، PVS-Studio ونقاط الضعف واضحة. يجد محلل PVS-Studio الأخطاء ويصنف العديد منها على أنها CWE. من خلال تصحيح هذه الأخطاء ، تجعل تطبيقك أكثر موثوقية. يمكن أن يؤثر العثور على ثغرة أمنية في منتج ما بشكل خطير على سمعته. من خلال تصحيح أخطاء المحلل ، فإنك تقلل بشكل كبير من هذا الخطر في المرحلة الأولى من التطوير - كتابة التعليمات البرمجية.
محلل PVS-Studio ، مثل أي أداة أخرى ، لا يضمن عدم وجود ثغرات في الكود. ومع ذلك ، إذا منع PVS-Studio ، على سبيل المثال ، 50 ٪ من الثغرات المحتملة ، فهذا أمر رائع بالفعل.
بالإضافة إلى ذلك ، نقترح أن تقرأ المقالة "
كيف يمكن لـ PVS-Studio المساعدة في العثور على الثغرات الأمنية؟ " ، والتي تعرض الأخطاء التي أدت إلى الثغرات ، والتي كان يمكن تجنبها إذا تم استخدام أداة PVS-Studio في عملية التطوير.
ابدأ في استخدام PVS-Studio كحل SAST: قم
بتنزيل PVS-Studio .