باگ باونتی (bug bounty) چیست ؟

به گفته ویکی پدیا باگ باونتی به دلیل گزارش باگ‌ها، به خصوص باگ‌هایی که باعث سو استفاده و آسیب پذیری می‌شوند، در ازای گزارش این باگ‌ها افراد پاداش دریافت می‌کنند و به رسمیت شناخته می‌شوند، مورد توجه بسیاری از وب سایت‌ها و توسعه دهندگان نرم‌افزاری قرار گرفته‌است.این برنامه‌ها به توسعه دهندگان اجازه می‌دهند که باگ‌ها را قبل از اینکه عموم مردم از آن‌ها مطلع شوند کشف کنند، و مانع از حوادثی چون سو استفاده گسترده شوند. برنامه‌های باگ باونتی توسط تعداد زیادی از سازمان‌ها،از جمله Mozilla، Facebook،Yahoo،Google،Reddit،Square و Microsoft اجرا شدند.شرکت‌های صنعتی که با تکنولوژی سر و کار چندانی ندارند، اما سازمان‌های محافظه کار سنتی مانند وزارت دفاع امریکا، استفاده از برنامه‌های باگ باونتی را آغاز کردند. استفاده پنتاگون از برنامه‌های باگ باونتی بخشی از برنامه تغییر دولت است و چندین آژانس دولتی آمریکا از این برنامه استفاده می‌کنند، بر طبق این برنامه از هکرهای کلاه سفید (در زمینه امنیت کامپیوتری) دعوت می‌شود تا در افشای آسیب پذیری‌های امنیتی مشارکت کنند.باگ باونتی چیست؟باگ باونتی نام معامله ایی است که می توانید در ازای دریافت پول، باگ یا اشکالات را در یک نرم افزار یا یک وبسایت و … پیدا کنید. برای مثال من در یک سایت یا نرم افزار یک مشکل جدی پیدا می کنم که باعث می شود اطلاعات با ارزشی را دریافت کنم که برای سازنده مهم باشد ، میتوانیم با برقراری ارتباط با مدیر سایت یا نرم افزار انها را مطلع کنیم و پاداش خود را دریافت کنیم. و قبل از اینکه مشکل فراگیر شود و مورد سوء استفاده قرار بگیرد مشکل را آپدیت کنیم.چه چیزهایی برای باگ باونتی نیاز داریم؟کسب درآمد از باگ باونتی حتی برای کسانی که سالها تلاش می کنند کار ساده ایی نیست، و حقوق شما بر اساس توانایی شما و سطح کاری شما بستگی دارد.برای رسیدن به یک جایگاه برتر، شما نیاز به دانش و تجربه سختی در رابطه با شکار باگ و تست نفوذ دارید.جوانب مثبت برنامه باگ باونتیبا توجه به دامنه گسترده تر متقاضیان ، اشکالات بیشتری پیدا می شود.اشکالات قبل از آسیب رساندن شناسایی می شوند.هرچه بیشتر برنامه یا سایت مورد نظر خود را بررسی کرده باشید ، اشکالات عمده آن از بین می رود.زمان کم تری برای پیدا کردن اشکالات لازم است.در اینجا مزایایی را بیان کردیم که بستگی به تصمیم مخاطبان برای یافتن باگ در سایت یا نرم افزار شما است ( ممکن است دیگران از باگ ها سوء استفاده کنند).شما دیگر محدود به مهندس های موجود در تیم خود به صورت محلی نیستید، زیرا گزارش ها از هر جای دنیا قابل ارائه است. این بدان معنی است که شما از جمع بیشتری از مهندسان نسبت به محل خود بهره خواهید برد و از بهترین استعدادهای موجود در سراسر جهان استفاده خواهید کرد. بهتر است یک شکارچی باگ مشکلات شما را نسبت به یک هکر کلاه سیاه پیدا کند.جوانب منفی برنامه باگ باونتیبرنامه های باگ باونتی همیشه خوب نیستند و می توانند اشکالات زیادی را به وجود آورند. برای مثال:مهندس هایی که از لحاظ اخلاقی مشکل دارند ممکن است در عوض اطلاعات باگ ها را به منابع دیگر بفروشند.آزمایش های محققان می تواند به حملات مخرب تبدیل شود از جمله حملات تکذیب سرویس.با داشتن برنامه بانتی، تلاش به نفوذ به سرویس شما بیشتر می شود.شما ممکن است فکر بکنید که یک برنامه باگ باونتی باعث می شود که دیگر زمان و هزینه ایی بابت پیدا کردن باگ در برنامه خود نکنیم ، اما این کاملا اشتباه است.برنامه باگ باونتی نیاز به مدیریت و استخدام متخصص دارد که وقت خود را روی برنامه بگذارند و اشکالات یا باگ های آن را پیدا کنند ، به یاد داشته باشید کسانی که باگ های شما را شکار می کنند افرادی هستند که توانایی نفوذ به سایت و برنامه شما را دارند و بهتر است که رابطه خوبی با آنها برقرار کنید.بعضی ها واقعاً می خواهند اشکالات را پیدا کنند و آنها را به شما گزارش دهند. ممکن است دیگران از شما باج گیری کنند . و برخی دیگر فقط میخواند سرویس های شمارا خراب کنند یا اختلال در آن به وجود آورند.چگونه وارد حوزه باگ باونتی (Bug Bounty) شویم؟اگر اخبار حوزه فناوری‌اطلاعات را پیگیری می‌کنید تاکنون حتما شاهد اخبار تعیین جایزه برای هک‌کردن نرم‌افراز‌های شرکت‌ها و موسسات بوده‌اید. اما از سال ۲۰۱۲ یک سایت به نام hackerone راه‌اندازی شد که به شرکت‌ها این امکان را می‌دهد تا با پرداخت پول به هکرها یا شکارچی های باگ از حفر‌ه‌‌ها و مشکلات سایت و اپلیکیشن‌هایشان که توسط آنها کشف می‌شوند، مطلع شوند و نسبت به رفع آنها اقدام کنند.سایت هکر‌ وان پرداخت بیت‌کوین (Bitcoin) را نیز برای کاربرانش فراهم کرده‌ است ، از آنجایی که کشور هایی که تحت تحریم‌های مالی قرار دارند پرداخت پول از طریق روش‌های عادی امکان ناپذیر است. در صورت ثبت باگ در این سایت و تایید آن و با در نظر داشتن اینکه پرداخت بیت‌کوینی مشکلی نداشته باشد، ثبت باگ در این سایت با توجه به وضعیت نرخ ریال در برابر دلار فعالیت در این حوزه بسیار سودآور خواهد بود.برای ورود به این حوزه باید چند نوع دانش پایه داشته باشید؟فراگیری زبان های برنامه نویسی و طراحی وببرای یافتن ضعف‌های هر چیزی شما باید با نحوه‌ی ساخت آن نیز حتما آشنا باشید. دانستن و یادگیری جاوااسکریپت (javascript) و HTML و … پایه‌ای‌ترین دانشی است که باید فرا بگیرید زیرا که آنها سنگ بنای ساخت یک صفحه وب هستند .همچنین آشنایی با نحوه عملکرد یک مرورگر، انکودشدن URLها، XML و خیلی چیز‌های دیگر (فایر‌وال، پروکسی، API، دیتابیس ها و..) که اگر علاقمند به ورود به این حوزه‌اید باید آنها را یاد بگیرید.یادگیری اصول شبکه و وبهمچنین شما باید در ذهن خود مراحل کار کردن یک شبکه که یک سایت یا اپلیکیشن به آن متصل هست را به خوبی در ذهن خود پردازش کنید و بعد برای نفوذ کردن به آن شبکه راه های مختلف را امتحان کنید.شناخت انواع حملاتآشنایی با انواع حملات مثل (DDOS , sniffing , phishing و …) و همچنین نحوه ساز‌و‌کار آنها را نیز باید یاد بگیرید.ابزارهانرم‌افزار‌های BurpSuite، OWASP ZAP، Aqua Tone، را می‌توانید براحتی با سرچ در گوگل پیدا و نصب کنید. این نرم‌افزارها برای ارسال Payload و بررسی ریپانس وب‌سایت‌ها مناسب‌اند.البته ابزار‌های دیگری نیز قطعا وجود دارند که بدون رابط‌گرافیکی هستند که پس از آشنایی بیشتر و کسب تجربه بیشتر می‌توانید آنها را از گیت‌هاب یا گیت لب دانلود کنید.(همچنین وب سایت کالی بویز یک دوره کامل برای تحلیل آسیب پذیری های وب اپلیکیشن ها تولید کرده که که میتوانید از اینجا خریداری کنید)بروزرسانیدنبال کردن هکرهای باتجربه در شبکه‌های اجتماعی به خصوص توییتر و اینستاگرام می‌تواند به اطلاعات شما بیافزاید. خواندن آنالیز‌های هکر‌های دیگر از باگ‌هایی که کشف کرده‌اند میتواند بسیار مفید باشد و نکات آموزشی فراوانی به همراه دارد. و از سایت های مختلف که در حوزه شبکه فعالیت دارند میتوانید اخبار به روز هکر ها را بخوانید.