This is beta version of Ravro English website. Some dynamic texts are in Persian. If you need support, contact with support@ravro.ir.
گپ‌وگفتی با شکارچی آسیب‌پذیری؛ بهراد رضایی

گپ‌وگفتی با شکارچی آسیب‌پذیری؛ بهراد رضایی

210

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

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

_ چطور شد که وارد حوزه‌ی امنیت سایبری شدی؟ در مسیر بیشتر به صورت خودخوان پیش رفتی یا از منابع و دوره‌ها و ... نیز استفاده کردی؟

از حدود پنج سال پیش، در دوران دبیرستان که دوران کرونا هم بود، شروع به مطالعه‌ی مرتبط با این حوزه کردم و واردش شدم. قضیه از آن جایی شروع شد که درنمایشگاه کتاب، توجه من به تعدادی کتاب درباره ی هک و امنیت، جلب شد. با مطالعه‌ی آن کتاب‌ها دانش جزئی‌ای راجع به چگونگی نوشتن انواع تروجان‌ها، ویروس‌ها و چیزهایی که می‌شود به عنوان شوخی استفاده کرد (که البته شوخی‌های اخلاقی نسیتند)، به دست آوردم. اولین کاری که کردم این بود که به سراغ کامپیوترهای مدرسه رفتم، با ویروس خیلی شناخته شده ای به اسم Zip Bomb. مسئول آی‌تی دبیرستان ما، پورت و سه‌شاخه‌ی USB را جدا نکرده و آنتی‌ویروس نصب نکرده بود. من از طریق USB توانستم ویروسی که نوشته بودم را روی کامپیوترها بریزم. خوشبختانه قبل از این‌که مشکلی ایجاد شود یکی از دوستانم که از این موضوع اطلاع داشت، من را مجبور کرد که آن ویروس را حذف کنم. من از نتورک پلاس و سکیوریتی پلاس شروع کردم. چون به امنیت وب علاقه داشتم، سراغ Owasp WSTG رفتم. آن زمان من کلاس دوازدهم بودم. کنکور دادم و دانشگاه قبول شدم. بعد از گذشت دو ترم، در مرکز آپا دانشگاه مازندران مشغول شدم و دوره‌ی کارآموزی را گذراندم. دوره‌ی کارآموزی مرکز آپا، با دوره‌ی کارآموزی اکثر شرکت‌ها فرق می‌کرد. طبق دانشی که من دارم، دوره‌ی کارآموزی اکثر شرکت‌ها به این روال است که در آن صرفا با روند کار در آن شرکت آشنا می‌شوید. اما در دوره‌ی کارآموزی مرکز آپا، از صفر تا صد همه چیز را به ما آموزش می‌دادند. این دوره‌ی آموزشی، از نظر زمانی بدون محدودیت بود. یک فرد در دو ماه این دوره‌ی آموزشی را تمام می‌کرد، فرد دیگری در یک سال. بعد از آن به عنوان تست، یک وب سایت  دادند که تستش کنیم. باتوجه به گزارشی که تحویل می‌دادیم، از کارآموزی خارج می‌شدیم و به عنوان متخصص استخدام می‌شدیم. بعد از آن هم، پروژه‌های مختلفی از مرکز ماهر یا مرکز ICT را انجام می‌دادیم. این موارد باعث ایجاد سابقه‌ی قوی هم می‌شد. مثلا؛ با وجود این‌که من هنوز مدرک دیپلم دارم، توانستم به‌واسطه‌ی این سابقه در یک شرکت استخدام شوم. 

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

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

توصیه‌ی من برای دانشجویان این است که به سراغ مراکز آپا دانشگاه‌ها بروند. در آن‌جا صفر تا صد موضوعات، آموزش داده می‌شوند. توصیه‌ام برای کسانی که دانشجو نیستند و می‌خواهند کار بکنند این است که با دوره‌های نتورک پلاس و سکیوریتی پلاس شروع کنند و بعدش CEH. اگر هم خواستند سمت وب بروند، دوره ی Owasp WSTG دوره ی مناسبی است. برای تمرین هم سمت وب‌سایت‌هایی که در اینترنت هستند، نروند. سایت PortSwigger، آزمایشگاه‌هایی برای تمرین دارد. این آزمایشگاه‌ها این امکان را فراهم می‌کند که به طور امن‌تری تمرین کنید و مهارت خود را ارتقا دهید. اگر هم خواستند به طور آزاد کار کنند، شروع از باگ بانتی انتخاب مطمئن‌تری ست. چون اگر بخواهند به طور شخصی پروژه بگیرند، بحث قرارداد دردسرهای خودش را دارد. 

پیشنهاد خواندنی: ۵ توصیه برای شکارچیان آسیب پذیری تازه‌ وارد

_ هنگام بررسی یک سامانه، ابتدا به سراغ چه نقطه‌ای می‌روی؟

بررسی وبسایت تاحدی برایم روال روتینی دارد؛ (اگر نگفته باشند که اسکن نکنید) اسکن می‌گیرم، فرآیندهایی که در بک‌گراند انجام می‌شوند را اسکن می‌کنم و ... . من، به‌شخصه، چیزی که اول به سراغ تستش می‌روم، نقاطی ست که از کاربر، Input (چه متن و چه فایل) می‌گیرد. اگر داخل URLش چیز خاصی دیده باشم، URL را چک می‌کنم. Injection‌های داخل ریکوئست را چک می‌کنم. بعد از این‌که این آسیب پذیری های نسبتا ساده را چک کردم، به سراغ آسیب پذیری های پیچیده‌تری می‌روم که اکسپلویت‌کردنشان بیشتر وقت می‌برد. قدم به قدم پیش می‌روم. به Access Control هم بیشتر توجه می‌کنم، چون تست‌کردنش برایم راحت‌تر است. 

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

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

_ در تجربه‌ی خود، بیشتر چه آسیب پذیری‌ هایی را برروی کسب‌وکارها، کشف کرده‌ای؟

آسیب‌پذیری ای که من بیشتر در کسب‌وکارها پیدا کرده‌ام، آسیب پذیری XSS بوده است. سطح خطر اکثرشان Low یا Medium بوده است. نمی‌دانم، شاید چون من اکسپلویت کردنم خوب نیست. در موارد کمی هم آسیب پذیری Account Take over پیش آمده است. یک بار آسیب پذیری SQL Injectiom  کشف کردم. خوشبختانه آسیب پذیری SQL Injection معمولا سطح خطرش به Medium است یا به سمت High و حتی Critical می‌رود. البته من باز هم می‌گویم که در این حوزه تازه‌کار هستم. بعضی حرف‌هایم شاید دقیق نباشند. آسیب پذیری Idor هم بوده. مثال این آسیب پذیری به یکی از پروژه‌های شخصی‌ام بر‌می‌گردد: یک وب‌سایت خرید و فروش. در این کسب‌وکار به دلیل بار فروشی که داشتند، خریدها را به صورت دانه‌به‌دانه چک نمی‌کردند. فرد می‌توانست یک کالای پنج هزار تومانی بخرد و پرداخت هم بکند. ریکوئست پرداختش را نگه دارد و برود فرآیند خرید کالای دیگری ( مثلا موبایل بیست‌وچهار میلیون تومانی) را هم انجام دهد. هنگامی که پیام تایید خرید آمد، آن پیام را intercept (رهگیری) کند و به جای آن پیام، پیام خرید پنج هزارتومانی را بفرستد. وب‌سایت هم با پرداخت پنج هزار تومانی، خرید آیتم بیست‌وچهار میلیون تومانی را تایید می‌کرد. این تجربه، از تجربه‌های من در آپا محسوب می‌شود. در آن‌جا به ما گفته بودند که با استفاده از vpn و( IP ) آپا مجاز به تست آزادانه‌ی وب‌سایت‌های ایرانی هستیم. اگر هم صاحب آن وب‌سایت بخواهد شکایتی کند، مجوز آپا مانع دردسر می‌شود.ما هم با خیال راحت تست می‌کردیم. وگرنه سرخود وبسایت‌ها را چک نمی‌کنم. چون می‌دانم می‌تواند به عواقب ناخوشایندی منجر شود.

_ چه آرزویی برای حوزه‌ی امنیت سایبری داری؟

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

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

_ ممنون که در این گپ‌وگفت همراه ما بودی بهراد عزیز. امیدواریم شاهد تحقق آرزوهایت باشیم.

بلاگ‌پست‌های مرتبط:

گپ‌وگفتی با شکارچی آسیب پذیری؛ محمدرضا تیموری ( rezamoreti1 )

گپ‌وگفتی با شکارچی آسیب پذیری؛ محمدحسین آشفته‌یزدی (sec_zone64)

گپ‌وگفتی با شکارچی آسیب‌پذیری؛ علی فیروزی