گوگل یه برنامه باگ بانتی برای پلتفرم موبایلش، با عنوان Mobile Vulnerability Rewards Program (Mobile VRP) و با هدف کشف آسیب پذیری در برنامه های اندروید، راه اندازی کرده که در این پست به بررسی اون پرداختیم.
دامنه ی Mobile VRP شامل برنامه هایی هستش که توسط موارد زیر توسعه داده شدن :
- Google LLC
- Developed with Google
- Research at Google
- Red Hot Labs
- Google Samples
- Fitbit LLC
- Nest Labs Inc.
- Waymo LLC
- Waze
همچنین این برنامه در سه رده (Tier) برگزار میشه که این رده ها همراه با نوع و شدت آسیب پذیری روی مبلغ تاثیر گذار هستن.
برنامه هایی که در Tier 1 قرار دارن :
Name | Package name |
---|---|
Google Play Services | com.google.android.gms |
AGSA | com.google.android.googlequicksearchbox |
Google Chrome | com.android.chrome |
Google Cloud | com.google.android.apps.cloudconsole |
Gmail | com.google.android.gm |
Chrome Remote Desktop | com.google.chromeremotedesktop |
برنامه هایی که در Tier 2 قرار دارن :
برنامه هایی که به نحوی با برنامه های Tier 1 ، داده های کاربر و سرویس های گوگل در تعامل هستن، در این رده قرار دارن.
برنامه هایی که در Tier 3 قرار دارن :
برنامه هایی که داده های کاربر مدیریت نمیکنن یا با سرویس های گوگل در تعامل نیستن، در این رده قرار میگیرن.
آسیب پذیری های واجد شرایط :
- اجرای کد دلخواه (ACE) : آسیب پذیری هایی که امکان اجرای کد دلخواه رو به مهاجم میدن. نکته ای که وجود داره اینه که این کار بدون فریب کاربر برای دانلود برنامه و نصب اون باید انجام بگیره.مانند :
- مهاجم کنترل کامل برنامه رو بدست میاره، یعنی میتونه کد از شبکه دانلود و اجرا کنه.
- یه فایل so که توسط برنامه آسیب پذیر اجرا میشه رو با یه so مخرب بازنویسی کنه.
- اجرای کد جاوا بمنظور فراخوانی exec و در نتیجه اجرای native code دلخواه
- سرقت داده های حساس: شامل آسیب پذیری هایی میشه که امکان دسترسی غیرمجاز به داده های حساس از یک برنامه روی دستگاه اندروید میده. داده های حساس رو هم بصورت زیر طبقه بندی کرده :
- داده هایی که امکان دسترسی غیرمجاز به اکانت کاربر بده (مانند اعتبارنامه های ورود به سیستم)
- داده های حساس تولید شده توسط کاربر ( مثلا لیست مخاطبین، عکس ها ، پیامها و …)
- داده هایی که مرتبط یا قابل پیوند به یه فرد هستش ( مثلا اطلاعات شغلی، پزشکی و … )
- داده های مکانی به تنهایی واجد شرایط نیستن مگه اینکه با اطلاعات شناسایی منحصر به فرد یه فرد ترکیب بشن.مثالهایی که در این دسته بندی عنوان شدن :
- فایلهای داده ای که بطور ناامن ذخیره شدن و حاوی اطلاعات حساس هستن که توسط سایر برنامه ها در دسترس هستن.
- داده های حساس که بطور ناامن در شبکه ارسال میشن و امکان رهگیری رو دارن.
- سایر آسیب پذیری ها: آسیب پذیری های این دسته واجد شرایط نیستن، اما اگه تاثیر امنیتی داشته باشن، قابل توجه هستن. این آسیب پذیری ها اغلب، توسط آسیب پذیری های دیگر در یه زنجیره اکسپلویت مورد استفاده قرار میگیرن. مانند :
- آسیب پذیری های Path traversal / zip path traversal که منجر به نوشتن فایل دلخواه میشن.
- intent redirection که منجر به اجرای مولفه های non-exported برنامه میشن.
- آسیب پذیری هایی که منجر به استفاده ناامن از pending intent میشه.
- Orphaned permissions
میزان بانتی:
جدول زیر ، حداکثر میزان پاداش رو نشون میده. در هر ردیف، حداکثر مقدار بانتی، به نوع آسیبپذیری و سناریویی که در اون آسیبپذیری مورد اکسپلویت قرار میگیره، بستگی داره :
بانتی های مرتبط با tier 1 :
دسته بندی | از راه دور و بدون تعامل کاربر | کاربر باید روی لینکی کلیک کنه تا آسیب پذیری در برنامه اکسپلویت میشه | کاربر باید یه برنامه مخرب نصب کنه یا برنامه بصورت غیرپیش فرض پیکربندی شده باشه | مهاجم باید در شبکه باشه. مثله MiTM |
---|---|---|---|---|
اجرای کد دلخواه | $30,000 | $15,000 | $4,500 | $2,250 |
سرقت داده های حساس | $7,500 | $4,500 | $2,250 | $750 |
سایر آسیب پذیریها | $7,500 | $4,500 | $2,250 | $750 |
بانتی های مرتبط با tier 2 :
دسته بندی | از راه دور و بدون تعامل کاربر | کاربر باید روی لینکی کلیک کنه تا آسیب پذیری در برنامه اکسپلویت میشه | کاربر باید یه برنامه مخرب نصب کنه یا برنامه بصورت غیرپیش فرض پیکربندی شده باشه | مهاجم باید در شبکه باشه. مثله MiTM |
---|---|---|---|---|
اجرای کد دلخواه | $25,000 | $12,500 | $3,750 | $1,875 |
سرقت داده های حساس | $6,250 | $3,750 | $1,875 | $625 |
سایر آسیب پذیریها | $6,250 | $3750 | $1,875 | $625 |
بانتی های مرتبط با tier 3 :
دسته بندی | از راه دور و بدون تعامل کاربر | کاربر باید روی لینکی کلیک کنه تا آسیب پذیری در برنامه اکسپلویت میشه | کاربر باید یه برنامه مخرب نصب کنه یا برنامه بصورت غیرپیش فرض پیکربندی شده باشه | مهاجم باید در شبکه باشه. مثله MiTM |
---|---|---|---|---|
اجرای کد دلخواه | $20,000 | $10,000 | $3,000 | $1,500 |
سرقت داده های حساس | $5,000 | $3,000 | $1,500 | $500 |
سایر آسیب پذیریها | $5,000 | $3,000 | $1,500 | $500 |
اگه مثلا آسیب پذیری جالبی رو گزارش کنید، ممکنه 1000 دلار بیشتر بانتی بگیرید.
نحوه گزارش:
توصیه شده بجای ارسال یه ویدیو که آسیب پذیری رو شرح میده، یه PoC ارسال کنید.
همچنین اگه آسیب پذیری رو کشف کردید از اینجا گزارش کنید.
آسیب پذیری های شخص ثالث، کتابخانه یا SDK :
اگه آسیب پذیری رو در یه برنامه شخص ثالث پیدا کردید، به برنامه Google Play Security Reward Program مراجعه کنید.
اگه یه آسیب پذیری در SDK یا کتابخونه ای پیدا کردید که در برنامه های گوگل استفاده میشن، اونو به صاحب کتابخونه یا SDK ارسال کنید. اگه این کار مقدور نبود، مبلغ بانتی دو برابر یه بانتی معمولی هستش. یعنی برای یه باگ 3000 دلاری، نهایتا 6000 دلار میدن.
آسیب پذیری های این قسمت هم باید به Android and Google Devices Security Reward Program گزارش بشن.