قدم فيسبوك Pysa، وهو محلل ثابت للغة بايثون

فيسبوك المقدمة فتح محلل ثابت بيسا (Python Static Analyzer)، المصمم لتحديد نقاط الضعف المحتملة في كود Python. تم تصميم المحلل الجديد ليكون بمثابة وظيفة إضافية لمجموعة أدوات التحقق من النوع محرقة الجثث ونشرها في مستودعه. شفرة نشرت بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.

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

يتلخص عمل المحلل في تحديد مصادر البيانات والمكالمات الخطيرة التي لا ينبغي استخدام البيانات الأصلية فيها. تعتبر البيانات الواردة من طلبات الويب (على سبيل المثال، قاموس HttpRequest.GET في Django) بمثابة مصدر، وتعتبر الاستدعاءات مثل eval وos.open بمثابة استخدامات خطيرة. يتتبع Pysa تدفق البيانات من خلال سلسلة استدعاءات الوظائف ويربط البيانات المصدر بالأماكن التي يحتمل أن تكون خطرة في التعليمات البرمجية. الثغرة الأمنية النموذجية التي تم تحديدها باستخدام Pysa هي مشكلة إعادة توجيه مفتوحة (CVE-2019-19775) في نظام المراسلة Zulip، وذلك بسبب تمرير معلمات خارجية غير نظيفة عند عرض الصور المصغرة.

يمكن لقدرات تتبع تدفق البيانات في Pysa يتقدم للتحقق من الاستخدام الصحيح للأطر الإضافية وتحديد الامتثال لسياسة استخدام بيانات المستخدم. على سبيل المثال، يمكن استخدام Pysa بدون إعدادات إضافية للتحقق من المشاريع باستخدام إطاري عمل Django وTornado. يمكن لـ Pysa أيضًا اكتشاف الثغرات الأمنية الشائعة في تطبيقات الويب، مثل حقن SQL والبرمجة النصية عبر المواقع (XSS).

في الفيسبوك، يتم استخدام المحلل للتحقق من رمز خدمة Instagram. في الربع الأول من عام 2020، ساعدت Pysa في تحديد 44% من جميع المشكلات التي اكتشفها مهندسو فيسبوك في قاعدة التعليمات البرمجية من جانب الخادم في Instagram.
في المجمل، حددت عملية مراجعة التغيير الآلية في Pysa 330 مشكلة، تم تصنيف 49 منها (15%) على أنها رئيسية و131 (40%) على أنها غير خطيرة. في 150 حالة (45٪) تم تصنيف المشاكل على أنها نتائج إيجابية كاذبة.

المصدر: opennet.ru

إضافة تعليق