سرویس OSS-Fuzz گوگل که از سال 2016 معرفی شد ، تا الان تونسته 8800 آسیب پذیری و 28000 باگ در 850 پروژه متن باز رو تشخیص و اصلاح کنه.
با این فازر آسیب پذیری های مختلفی در پروژه های متن باز مانند FFmpeg و LibreOffice و SQLite و ansible و فایرفاکس و … کشف شده.
هدف اصلی این پروژه ، کمک به جامعه متن باز برای تست فازینگ پروژه هاشون بوده. گوگل علاوه بر ارائه این سرویس بصورت رایگان ، برای تشویق و گسترش استفاده از این فازر یه برنامه پاداش برای این فازر که قسمتی از برنامه Patch Rewards Program هست از سال 2017 راه انداخت.
در این 5 سالی که برنامه پاداش برای OSS-fuzz راه انداخته برای 65 مشارکت کننده ، 600 هزار دلار پاداش داده.
پاداشها برای مشارکت کننده هایی که با OSS-Fuzz پروژه هاشون رو تست میکنن بین 1000 تا 20 هزار دلار بود. با این همه ، گوگل گفته که میخواد برنامه پاداشش برای این برنامه افزایش بده و سقف اونو 30 هزار دلار تعیین کرده. یسری پاداش جدید هم معرفی کرده.
در کل سه روش برای گرفتن پاداش هستش : تست فازینگ برای پروژه های جدید ، بهبود پروژه های موجود ، ارائه راهکارهایی برای کشف کلاس های جدید آسیب پذیری
برای پروژه های جدید ، پروژه توسط تیم OSS-Fuzz بررسی میشه و باید یا در زیرساختهای حیاتی باشه یا کاربرای زیادی در حال استفاده ازش باشن. برای این مورد تا 5000 دلار پاداش میده. جزییات بیشتر برای ثبت پروژه رو میتونید از اینجا ببینید.
اگه پروژه ای رو دارید توسعه میدید و از همون ابتدا تست فازینگ رو روی پروژه انجام بدید ، تا سقف 15هزار دلار پاداش میده. البته یسری شرایط هم داره. مثلا باید CIFuzz رو پیاده سازی کنید و همه pull request رو فاز کنید. حداقل 50 درصد کل پروژه رو با فازینگ پوشش بدید. حداقل دو تا باگ گزارش شده رو اصلاح کنید. جزییات بیشتر در خصوص نحوه ثبت گزارش در این مورد میتونید اینجا ببینید.
اگه بتونید پوشش فازینگ برای پروژه هایی که در OSS-Fuzz تست میشن ، افزایش بدید تا 5000 دلار در یه پروژه پاداش میده. هر 10 درصد افزایش برابر 1000 دلار.
برای بهبود در FuzzIntrospector تا سقف 5000 دلار برای هر پروژه پاداش میده. Fuzz introspector یه ابزاری هستش که برای کمک به توسعه دهنگان فازرها مورد استفاده قرار میگیره. در کل کارش هم اینه که عملکرد فازر مانند میزان پوشش ، entry pointها و … رو ارزیابی میکنه.
برای FuzzBench هم تا 11337 دلار میده البته باید نسبت به فازرهای موجود پیشرفتهایی رو داشته باشه. FuzzBench یه سرویس رایگان ارزیابی فازرها با پروژه های دنیای واقعی با مقیاس های گوگل هستش. شما یه فازر مینویسید و این سرویس فازر شما رو روی پروژه های مختلف مثلا Curl تست میکنه و یه ارزیابی ازش میده. جزییات بیشتر میتونید از اینجا ببینید.
اگه بتونید یه sanitizer جدید برای پروژه هایی که از OSS-FUZZ استفاده میکنن ، ایجاد کنید ، بطوریکه بتونه دو تا آسیب پذیری رو شناسایی کنه ، 11337 دلار بانتی میده.
اگه بتونید آسیب پذیری حیاتی که تاثیر زیادی در تست فازینگ داره پیدا کنید هم 11337 دلار پاداش میده. البته آسیب پذیری باید روی طیف وسیعی از کاربران تاثیر مستقیم داشته باشه.
جزییات بیشتر و کامل در خصوص نحوه ثبت و استفاده از پاداشها رو هم میتونید از اینجا ببینید.
علاوه بر خبر افزایش پاداشها و اضافه شدن دسته های جدید پاداش ، یسری بهبودها در پروژه های مختلفشون انجام دادن. مثلا OSS-Fuzz زبانهای C/C++, Go, Rust, Java, Python و Swift رو پوشش میده و قراره با Jazzer.js ، از جاوااسکریپت هم پشتیبانی کنه.
گوگل همچنین اعلام کرده که پروژه FuzzBench قراره در یه ورکشاپ یه روزه با نام SBFT در کنفرانس بین المللی ICSE مورد استفاده قرار بگیره.
کنفرانس ICSE معتبرترین کنفرانس در زمینه مهندسی نرم افزار هستش که از سال 1975 برگزار میشه. این کنفرانس امسال 14 تا 20 مه ، 24 تا 30 اردیبهشت 1402 در ملبورن استرالیا برگزار بشه.
کارگاه SBFT هم با هدف گردآوری محققین و تشویق اونا برای استفاده از فازینگ قراره برگزار بشه. این ورکشاپ قراره 14 مه ، 24 اردیبهشت 1402 ،در کنار کنفرانس ICSE 2023 برگزار بشه. در این ورکشاپ یه مسابقه فازینگ هم قراره برگزار بشه که نتایج با پلتفرم FuzzBench ارزیابی میشه.