ارائه روشی هوشمند برای تولید داده آزمون به‌منظور کشف آسیب‌پذیری‌های نرم‌افزار

نویسندگان

1 دانشگاه جامع امام حسین(ع)

2 دانشگاه جامع امام حسین(ع)

doi
چکیده

در این مقاله، یک فازر جعبه خاکستری، جهت کشف آسیب­پذیری­ در کدهای باینری اجرایی ارائه شده است. بررسی­ها نشان می­دهد که آزمون فازینگ دارای سه مشکل اساسی است. در ابتدا، فضای ورودی فراهم‌شده جهت پوشش مسیرهای اجرایی برنامه، توسط فازرها می­تواند بسیار بزرگ باشد. از سوی دیگر به‌واسطه بزرگی فضای ورودی، اغلب فازرها پوشش نامناسبی از مسیرهای اجرای کد را ارائه می­دهند. درنهایت، به دلیل این پوشش نامناسب، تعداد زیادی از آسیب‌پذیری‌های ممکن در مسیرهای نادیده گرفته شده، آشکار نمی­گردند. روش پیشنهادی این مقاله، مشکل بزرگی فضای ورودی را با محدود کردن تولید داده آزمون به پوشش مسیرهای مشکوکی که الگوهای آسیب‌پذیری در آن­ها بیشتر مشاهده شده، در طی یک فرایند تکاملی، حل نموده است. در راهکار ارائه شده، زمانی که یک داده آزمون یک آسیب‌پذیری را در یک مسیر اجرایی آشکار می­کند، داده آزمون بعدی به‌گونه‌ای تولید می­شود که باعث رخداد آن آسیب­پذیری ­شود. درنتیجه تعداد آسیب­پذیری­های شناسایی‌شده افزایش می­یابد. ارزیابی‌های انجام‌شده، کارایی برتر روش پیشنهادی را در مقایسه با سایر روش­های آزمون فازینگ نشان می­دهند.