لسلة ندوات مركز بحوث الأمن الرقمي - ماثياس باير

Jan 20, 2022
DSRC Seminar Series - Mathias Payer
Mathias Payer

ماثياس باير

أستاذ باحث ومشارك في مدرسة علوم الحاسوب والاتصالات التابعة لمدرسة لوزان الاتحادية للفنون التطبيقية (EPFL).

20 يناير 2022 - من الساعة 4 مساء حتى الساعة 5 مساء (بتوقيت الخليج)

العنوان:

الاستفادة من تقنية اختبار البرمجيات بالمدخلات العشوائية: من الأخطاء إلى نقاط الضعف

الملخص:

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

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

السيرة الذاتية:

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