در PHDays 9 برای اولین بار به عنوان بخشی از یک نبرد سایبری
فقط پروژه های غیر تجاری ارسال شده توسط نویسندگان آنها برای شرکت در هکاتون پذیرفته شدند. ما برنامه هایی را از چهار پروژه دریافت کردیم، اما تنها یکی انتخاب شد - bitaps (
چند روز قبل از شروع مسابقه، شرکت کنندگان برای نصب برنامه خود از راه دور به زیرساخت بازی دسترسی پیدا کردند (این برنامه در یک بخش محافظت نشده میزبانی می شد). در The Standoff، مهاجمان، علاوه بر زیرساخت شهر مجازی، مجبور بودند به برنامه حمله کنند و گزارشهای باگ بوونتی را در مورد آسیبپذیریهای یافت شده بنویسند. پس از تایید سازمان دهندگان وجود خطا، توسعه دهندگان می توانند در صورت تمایل آنها را تصحیح کنند. با وجود تمام آسیبپذیریهای تایید شده، تیم مهاجم یک جایزه در انظار عمومی (واحد پول بازی The Standoff) دریافت کرد و تیم سازنده جریمه شد.
همچنین، طبق شرایط مسابقه، برگزارکنندگان میتوانند وظایف شرکتکنندگان را برای بهبود برنامه تعیین کنند: اجرای عملکرد جدید بدون انجام اشتباهاتی که بر امنیت سرویس تأثیر میگذارد، مهم بود. به ازای هر دقیقه عملکرد صحیح برنامه و برای اجرای بهبودها، به توسعه دهندگان بودجه عمومی گرانبهایی اهدا شد. اگر آسیبپذیری در پروژه یافت میشد و همچنین به ازای هر دقیقه از کار افتادن یا عملکرد نادرست برنامه، آنها حذف میشدند. رباتهای ما بر این موضوع نظارت داشتند: اگر مشکلی پیدا کردند، آن را به تیم bitaps گزارش میدادیم و به آنها فرصتی برای رفع مشکل میدادیم. اگر حذف نمی شد منجر به زیان می شد. همه چیز مثل زندگی است!
در روز اول مسابقات، مهاجمان سرویس را آزمایش کردند. تا پایان روز، ما فقط چند گزارش از آسیبپذیریهای جزئی در برنامه دریافت کردیم که بچههای bitaps به سرعت آنها را برطرف کردند. حوالی ساعت 23 شب، زمانی که شرکت کنندگان در حال حوصله بودند، پیشنهادی برای بهبود نرم افزار از ما دریافت کردند. کار آسانی نبود. بر اساس پردازش پرداخت موجود در برنامه، لازم بود سرویسی پیادهسازی شود که امکان انتقال توکنها را بین دو کیف پول با استفاده از یک پیوند فراهم کند. فرستنده پرداخت - کاربر سرویس - باید مبلغ را در صفحه خاصی وارد کرده و رمز عبور این انتقال را مشخص کند. سیستم باید یک پیوند منحصر به فرد ایجاد کند که برای گیرنده پرداخت ارسال می شود. گیرنده پیوند را باز می کند، رمز عبور را وارد می کند و کیف پول خود را برای دریافت مبلغ نشان می دهد.
با دریافت این کار، بچه ها بلند شدند و تا ساعت 4 صبح سرویس انتقال نشانه ها از طریق پیوند آماده شد. مهاجمان ما را منتظر نگه نداشتند و در عرض چند ساعت یک آسیب پذیری جزئی XSS را در سرویس ایجاد شده کشف کردند و آن را به ما گزارش دادند. ما در دسترس بودن آن را بررسی و تأیید کردیم. تیم توسعه با موفقیت آن را برطرف کرد.
در روز دوم، هکرها توجه خود را روی بخش اداری شهر مجازی متمرکز کردند، بنابراین دیگر هیچ حمله ای به برنامه انجام نشد و توسعه دهندگان در نهایت توانستند از یک شب بی خوابی استراحت کنند.
در پایان مسابقه دو روزه جوایز به یاد ماندنی پروژه bitaps را اهدا کردیم.
همانطور که شرکت کنندگان پس از بازی اعتراف کردند، هکاتون به آنها اجازه داد تا قدرت برنامه را آزمایش کنند و سطح بالای امنیت آن را تأیید کنند. شرکت در هکاتون فرصتی عالی برای تست امنیت پروژه شما و کسب تخصص در کیفیت کد است. ما خوشحالیم: ما موفق شدیم در برابر حمله مهاجمان مقاومت کنیم. - برداشت های خود را به اشتراک گذاشت عضو تیم توسعه bitaps الکسی کارپوف. - این یک تجربه غیرمعمول بود، زیرا ما مجبور بودیم برنامه را در یک موقعیت استرس زا، برای سرعت، اصلاح کنیم. شما باید کدی با کیفیت بالا بنویسید و در عین حال خطر اشتباه زیادی وجود دارد. در چنین شرایطی شما شروع به استفاده از تمام مهارت های خود می کنید.".
در نظر داریم سال آینده دوباره هکاتون برگزار کنیم. اخبار را دنبال کنید!
منبع: www.habr.com