2 ماه باگ بانتی هانتینگ چه چیزهایی به من یاد داد؟

2 ماه باگ بانتی هانتینگ چه چیزهایی به من یاد داد؟

در 2 ماه اول باگ بانتی هانتینگ باید بدانید

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

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

فصل صفرم: پیش زمینه

قبل از اینکه به مسایل اصلی بپردازیم، می خواهم این مساله را روشن کنم که من مبتدی نیستم و هدف من از نوشتن محتوای این مقاله، بدنام کردن وانتقاد کردن هیچ هکری در زمینه فعالیتش نیست.

من 3 سال در زمینه IT و 2 سال در زمینه امنیت سایبری سابقه مفید دارم. بیان این مساله مهم بود، چون  در ادامه دراین مورد هم صحبت خواهیم کرد.

فصل اول: هیولای جالوت (Behemoth)

3 دلیلی که باعث شد تا من باگ بانتی را شروع کنم:

  1. میخواستم نام من درکنار نام فروشندگان و شرکت های مختلف دیده شود. این ایده از سمت یک مدیر منابع انسانی به من پیشنهاد شد، که ایده‌ی بسیار خوبی است، چون هم باعث می‌شود تا حمله را به درستی یادبگیرم و درکنار آن با ظرفیت و مهارت عملیاتی خودم در دنیای واقعی بیشتر آشنا شوم.
  2. قصد داشتم بدانم در زمینه تامین امنیت وب در چه جایگاهی قرار دارم.
  3. کمک کردن به شرکت‌ها(پول درآوردن!)، احترام، و اسوگ (الکی مثلا!!)

قبل از هرچیزی یک روتین برای خودتان تعریف کنید و حتما حتما این کار را انجام دهید. اولین اشتباهی که من مرتکب شدم، این بود که زمان را در نظر نگرفتم! باید بدانید که چه زمانی باید کار را متوقف کنید و چه زمانی آن را ادامه دهید، براساس راحتی خودتان زمان را انتخاب کنید (مثلا روزی 3 ساعت)، حالا بنشینید و2 ساعت از این 3 ساعت را از محتواهای موجود استفاده کنید، یاد بگیرید و در یک ساعت باقیمانده چیزهایی که یادگرفته اید را عملی کنید.

اشتباه اول: همه‌گیری دوره‌های آموزشی تمام نشدنی

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

پیشنهاد کتاب: کتاب Web Hacking 101

اشتباه دوم: اهداف اشتباه

اینجا یک قرارداد نانوشته وجود دارد، شما وارد HackerOne می‌شوید و یک هدف را به صورت تصادفی انتخاب می‌کنید و ساعت ها برای کشف باگ در آن وقت می‌گذارید، اما چیزی بدست نمی‌آورید. علت این بداقبالی این است که اولا پلتفرم از قبل ایمن سازی شده است و ثانیا باگ های پیشرفته خارج ازظرفیت شما هستند. به یاد داشته باشید، در اکثر برنامه های عمومی باگ های ساده و دم دستی قبل از شما توسط شکارچیان دیگر کشف و گزارش شده‌اند. اگر روی این باگ ها وقت بگذارید، در نهایت یک پاسخ ثبت گزارش تکراری دریفات خواهید کرد، به همین خاطر بهتر است به سراغ برنامه هایی با اسکوپ گسترده تر بروید:

بهترین برنامه ها با اسکوپ گسترده: Redbull و Dutch Government.

نکات کلیدی: اهداف عمومی و دم دستی را انتخاب نکنید، وقت خود را با دوره های آموزشی 20 ساعته هدر ندهید.

فصل دوم: رویین‌تن

پس ازاینکه هدف خودتان را انتخاب کردیدِ، انتخاب می‌کنید که از یک رویکرد برای کشف باگ استفاده کنید، پس طبق گفته یک یوتیوبر معروف این رویکرد را انتخاب می‌کنید، اما این راه درست نیست، به عنوان یک تازه‌کار، شما مهارت کافی برای یافتن مکان باگ ها را ندارید. این یعنی اینکه این رویکردی که این یوتیوبر معروف معرفی کرده برای یک نفوذگربا تجربه چندین ساله در زمینه وب اپلیکیشن  قابل استفاده است، و برای یک تازه کار فقط هدر دادن منابع را در پی خواهد داشت. پس بهتر است درمورد یک باگ ساده آموزش ببینید و سعی کنید این باگ را در اپلیکیشن ها پیدا کنید.

راحت ترین کاری که اینجا می‌توانید انجام دهید این است که ثابت قدم باشید تا به یک مقدار مناسب که شما را از خودتان راضی کند برسید، هرچند هیچ سقفی نمی توان برای این مقدار درنظر گرفت، اما من معمولا خودم را مجبور می‌کنم تا روزی 4 ساعت برای پیدا کردن یک باگ وقت بگذارم. این مقدار و زمان برای من بسیار مناسب است چراکه به من اجازه می‌دهد تا زمانی برای ارزیابی دوباره هم داشته باشم.

نکات کلیدی: سخت کار نکنید بلکه هوشمندانه کار کنید. درلحظه فقط یک آسیب‌پذیری را یادبگیرید و دریک برنامه با اسکوپ گسترده به دنبال آن بگردید. از بکاربردن رویکردهای آماده اجتناب کنید.

فصل سوم: الهه تنبلی و اهمال‌کاری

یکی از دوستانم 3 هفته قبل از من کارش را شروع کرده بود، و من با کشف دلیل چگونگی ساده بودن کاراز او پیشی گرفتم و او را غافلگیر کردم. او تلاشی برای ساختن رویکرد و روتین مناسب خودش نکرد، و درنتیجه در مواجهه با ابزارهایی که نصب و استفاده از آن ها بسیار سخت بود، تسلیم شد و کار را رها کرد.

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

نکات کلیدی: ماشین تست خودتان را با استفاده از ابزارها راه‌اندازی کنید و از نحوه استفاده از آن ها یادداشت برداری کنید. یادبگیرید که چگونه از این ماشین به صورت خودکار در هاست های مختلف به صورت همزمان استفاده کنید.

فصل چهارم: الهه سرس، برداشت باگ ها

پس از برخوردهای اولیه‌تان با وب اپلیکیشن ها، بایستی مسایلی که در اطرافتان درحال رخ دادن هستند را به راحتی درک کنید و این مسائل دیگر مثل قبل برایتان نباید پیچیده باشند. اینجا فقط پشتکار داشتن مهم است، برای من 24 روز طول کشید، یک چالش 25 روزه را بردارید و به غیر از باگ بانتی کار دیگری انجام ندهید و روی چیز دیگری تمرکز نکنید، اگر در این 25 روز جواب گرفتید که چه خوب، اما اگر احساس کردید دراین مدت هیچ تغییری در شما ایجاد نشد، این کار را رها کنید. بله رها کردن کار راحتی نیست ولیکن، هرکس باید نقطه ای که باید چیزی را رها کند را بشناسد.

پس از این مرحله، اگر به حد کافی دراین راه ثابت قدم باشید و از اشتباهات پیروی کنید و از آن ها چیزی یادبگیرید، من به شما می توانم اطمینان بدهم که کم کم باگ هایی را کشف خواهید کرد و به خودتان افتخار خواهید کرد.

فصل پنجم: پیشروی

پس ازاینکه تعدادی باگ پیدا کردید، برای شرکت در برنامه های خصوصی دعوت می‌شوید، این یعنی رقابت کمتر و پول بیشتر، پس زیاد فکر نکنید و مستقیم به سراصل مطلب بروید، در برنامه های خصوصی زمان نسبتا بیشتری برای کار روی هدف دارید.

Flex

نتیجه‌گیری:

این کار ازشما سه چیز می‌خواهد، زمان، تلاش و آگاهی. اگر در خودتان این سه گزینه را میبینید، من شخصا موفقیت شما در شکار جایزه آسیب پذیری را تضمین می‌کنم.

برتری یک موهبت نیست، بلکه یک مهارت است که به تمرین نیاز دارد __ Plato

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *