تست نفوذ، یک حمله سایبری شبیهسازی شده علیه سیستم رایانه شما برای بررسی آسیبپذیریهای قابل بهرهبرداری است. در زمینه امنیت برنامه های کاربردی وب، تست نفوذ معمولا برای تقویت فایروال برنامه وب (WAF) استفاده می شود.
تست نفوذ میتواند شامل تلاش برای نقض هر تعداد از سیستمهای کاربردی، به عنوان مثال، رابطهای پروتکل برنامه (API)، سرورهای (frontend/backend) برای کشف آسیبپذیریها، مانند ورودیهای غیرقانونی باشد. بینش های ارائه شده توسط تست نفوذ را می توان برای بالا بردن امنیت شبکه خود استفاده کرد.
مراحل تست نفوذ
فرآیند تست نفوذ را می توان به پنج مرحله تقسیم کرد.
- برنامه ریزی و شناسایی
مرحله اول شامل:
- تعریف دامنه و اهداف یک آزمون، از جمله سیستم هایی که باید مورد بررسی قرار گیرند و روش های آزمایشی که باید استفاده شود.
- جمع آوری اطلاعات (به عنوان مثال، نام های شبکه و دامنه، سرور ایمیل) برای درک بهتر نحوه عملکرد یک هدف و آسیب پذیری های احتمالی آن.
2. اسکن
گام بعدی این است که بفهمیم برنامه هدف چگونه به تلاشهای مختلف نفوذ پاسخ میدهد. این معمولاً با استفاده از موارد زیر انجام می شود:
- تجزیه و تحلیل استاتیک: بازرسی کد برنامه برای تخمین نحوه عملکرد آن در حین اجرا. این ابزارها می توانند کل کد را در یک پاس اسکن کنند.
- تجزیه و تحلیل پویا: بازرسی کد برنامه در حالت در حال اجرا. این یک روش عملیتر برای اسکن است، زیرا نمایشی در زمان واقعی از عملکرد یک برنامه ارائه میکند.
3. به دست آوردن دسترسی
این مرحله از حملات برنامه های کاربردی وب مانند اسکریپت بین سایتی، تزریق SQL و درهای پشتی برای کشف آسیب پذیری های هدف استفاده می کند. سپس آزمایشکنندهها سعی میکنند از این آسیبپذیریها، معمولاً با افزایش امتیازات، سرقت دادهها، رهگیری ترافیک و غیره برای درک آسیبهایی که میتوانند ایجاد کنند، سوء استفاده کنند.
4. حفظ دسترسی
هدف این مرحله این است که ببینیم آیا میتوان از آسیبپذیری برای دستیابی به حضور دائمی در سیستم بهرهبرداریشده استفاده کرد یا نه؟ به اندازهای که یک فرد ناشناس به دسترسی عمیق دست پیدا کند. این ایده تقلید از تهدیدهای مداوم پیشرفته است، که اغلب ماه ها در یک سیستم باقی می مانند تا حساس ترین داده های سازمان را بدزدند.
5. تجزیه و تحلیل
سپس نتایج تست نفوذ در گزارشی با جزئیات جمعآوری میشود:
- آسیب پذیری های خاصی که مورد سوء استفاده قرار گرفتند.
- داده های حساسی که به آنها دسترسی پیدا شد.
- مدت زمانی که تستر نفوذ توانست در سیستم بدون شناسایی بماند.
این اطلاعات توسط پرسنل امنیتی تجزیه و تحلیل می شود تا به پیکربندی تنظیمات WAF شرکت و سایر راه حل های امنیتی برنامه برای اصلاح آسیب پذیری ها و محافظت در برابر حملات آینده کمک کند.
روش های تست نفوذ
تست خارجی
تستهای نفوذ خارجی داراییهای یک شرکت را هدف قرار میدهند که در اینترنت قابل مشاهده هستند، به عنوان مثال، خود برنامه وب، وبسایت شرکت، و سرورهای ایمیل و نام دامنه (DNS). هدف دستیابی به داده های ارزشمند و استخراج آن است.
تست داخلی
در یک تست داخلی، یک آزمایشکننده با دسترسی به برنامهای در پشت فایروال خود، حمله یک خودی مخرب را شبیهسازی میکند. این لزوما شبیه سازی یک کارمند سرکش نیست. یک سناریوی شروع معمول می تواند کارمندی باشد که اعتبار او به دلیل حمله فیشینگ به سرقت رفته است.
تست کور
در یک آزمایش کور، فقط نام شرکتی را که هدف قرار گرفته است، داده می شود. این به پرسنل امنیتی نگاهی بیدرنگ به نحوه انجام حمله واقعی به برنامه میدهد.
تست دوسوکور
در یک آزمایش دو سو کور، پرسنل امنیتی هیچ اطلاع قبلی از حمله شبیه سازی شده ندارند. همانطور که در دنیای واقعی، آنها هیچ زمانی برای تقویت دفاعی خود قبل از تلاش برای نقض نخواهند داشت.
تست هدفمند
در این سناریو، هم تستر و هم پرسنل امنیتی با هم کار می کنند و یکدیگر را از حرکات خود مطلع می کنند. این یک تمرین آموزشی ارزشمند است که به تیم امنیتی بازخورد بلادرنگ از دیدگاه هکرها ارائه می دهد.
منبع: وب سایت imperva