تست نفوذ یا Pentesting یک فعالیت امنیتی است که توسط متخصصان امنیت سایبری انجام میشود. هدف از تست نفوذ شناسایی آسیبپذیریها در یک شبکه و بهرهبرداری از آنها است. در این فرایند، تلاش میشود نقاط ضعف در دفاع سیستم شناسایی شده و به منظور تقویت اقدامات امنیتی استفاده میشود. تست نفوذ بر خلاف حملات مخرب، با اجازه صاحبان سیستمها و با رعایت اصول اخلاقی انجام میشود. در واقع، هکرهای اخلاقی یا تسترهای نفوذ، در نقش مهاجمین بازی میکنند و به دنبال پیدا کردن نقاط ضعف و آسیبپذیریهایی هستند که میتوانند توسط مهاجمان در آینده بهرهبرداری شوند. این روش، به سازمانها کمک میکند تا در مقابل حملات سایبری آمادگی بیشتری داشته باشند و اقدامات امنیتی خود را تقویت کنند. در مقاله “منظور از مبانی تست نفوذ (Pentesting) چیست؟” به بررسی کامل پرداخته می شود.
فهرست عناوین مقاله
تست نفوذ چیست؟
ست نفوذ یا (Pentesting) یک تمرین امنیتی است که در آن یک متخصص امنیت سایبری تلاش میکند تا آسیب پذیری ها را در یک سیستم کامپیوتری پیدا کند و از آن بهره برداری کند. هدف از این حمله شبیه سازی شده، شناسایی نقاط ضعف در دفاع سیستم است که مهاجمان می توانند از آن بهره ببرند. این کار مانند این است که یک بانک شخصی را استخدام می کند تا لباس سارق بپوشد و سعی کند به ساختمان آن ها نفوذ کند و به صندوق دسترسی پیدا کند. اگر سارق موفق شود و وارد بانک یا صندوق شود، بانک اطلاعات ارزشمندی در مورد چگونگی نیاز به تشدید اقدامات امنیتی خود به دست خواهد آورد.
چه کسی تست نفوذ را انجام می دهد؟
بهتر است تست نفوذ توسط شخصی انجام شود که اطلاعات کمی در مورد نحوه ایمن سازی سیستم دارد، زیرا ممکن است بتواند نقاط کوری را که توسط توسعه دهندگان و سازنده سیستم از پنهان مانده است، آشکار کند. به همین دلیل معمولاً پیمانکاران خارجی برای انجام آزمایشات وارد می شوند. این پیمانکاران اغلب به عنوان هکرهای اخلاقی شناخته می شوند زیرا آن ها برای هک کردن یک سیستم با مجوز و به منظور افزایش امنیت استخدام می شوند.
بسیاری از هکر های اخلاقی توسعه دهندگان باتجربه با مدارک پیشرفته و گواهینامه تست نفوذ هستند. از سوی دیگر، برخی از بهترین هکر های اخلاقی خودآموخته و خود آموز هستند. در واقع، برخی هکر های کلاه سیاه اصلاح شده هستند که اکنون از تخصص خود برای کمک به رفع نقص های امنیتی به جای سوء استفاده از آن ها استفاده می کنند. بهترین کاندید برای انجام تست نفوذ می تواند بسته به شرکت مورد نظر و نوع آزمایش قلمی که می خواهند شروع کنند بسیار متفاوت است.
انواع تست های نفوذ چیست؟
- Open-box PenTest: در یک تست جعبه باز، اطلاعاتی در مورد اطلاعات امنیتی شرکت مورد نظر قبل از تست نفوذ به هکر ارائه می شود.
- Closed-box PenTest (تست نفوذ بسته): آزمایشی است که در آن به هکر هیچ اطلاعاتی به جز نام شرکت مورد نظر داده نمی شود.
- Convert PenTest (تست نفوذ مخفی): وضعیتی است که تقریباً هیچ کس در شرکت از انجام آزمایش نفوذ آگاه نیست، از جمله متخصصان فناوری اطلاعات و امنیت که به حمله پاسخ خواهند داد. برای آزمایش های مخفی، برای هکر بسیار مهم است که دامنه و سایر جزئیات آزمایش را از قبل به صورت مکتوب داشته باشد تا از هر گونه مشکلی در اجرای قانون جلوگیری شود.
- External PenTest (تست نفوذ خارجی): در یک آزمایش خارجی، هکر کلاه سفید با فناوری های خارجی شرکت مانند وب سایت و سرور های شبکه خارجی مقابله میکند. در برخی موارد، هکر حتی ممکن است اجازه ورود به ساختمان شرکت را نداشته باشد. این می تواند به معنای انجام حمله از یک مکان دور یا انجام آزمایش از کامیون یا ون پارک شده در نزدیکی باشد.
- Enternal PenTest (تست نفوذ داخلی): در یک تست داخلی، هکر اخلاقی آزمایش را از شبکه داخلی شرکت انجام می دهد. این نوع تست برای تعیین میزان خسارتی که یک کارمند ناراضی از پشت فایروال شرکت وارد می کند مفید است.
معرفی دوره آموزشی
برای یادگیری مبانی تست نفوذ با استفاده از کالی لینوکس دوره “آموزش مبانی تست نفوذ با کالی لینوکس” را به شما پیشنهاد میکنم. این دوره آموزشی شما را با مفاهیم اساسی تست نفوذ و روشهای مورد استفاده در تست نفوذ با استفاده از کالی لینوکس آشنا میکند. در این دوره، شما با نحوه تست نفوذ، استفاده از ابزارهای تست نفوذ مختلف، تکنیکهای شناسایی ضعفها و نفوذ به سیستمها، و همچنین راهکارهای تقویت امنیت سیستمها آشنا میشوید.
با این دوره آموزشی، شما میتوانید مهارتهای لازم برای ارزیابی امنیت سیستمها را در محیطی تمرینی و عملی فرا بگیرید. همچنین، با تکنیکهای حمله و دفاع در برابر حملات سایبری آشنا شده و قدرت تست نفوذ خود را بهبود خواهید بخشید.
برای دسترسی به این دوره آموزشی جذاب، میتوانید به لینک زیر مراجعه کنید:
آموزش مبانی تست نفوذ با کالی لینوکس
مراحل مختلف تست نفوذ کدامند؟
تستر های نفوذ (متخصصان تست نفوذ) حملات مهاجمان با انگیزه را شبیه سازی می کنند. برای انجام این کار، آن ها معمولاً طرحی را دنبال می کنند که شامل مراحل زیر است:
- شناسایی (reconnaissance) تا جایی که ممکن است اطلاعات بیشتری در مورد هدف از منابع عمومی و خصوصی برای اطلاع از استراتژی حمله جمع آوری کنید. منابع عبارتند از جستجو های اینترنتی، بازیابی اطلاعات ثبت دامنه، مهندسی اجتماعی، اسکن شبکه بدون نفوذ، و گاهی اوقات حتی جستجو در زبالهدان. این اطلاعات به آزمایش کنندگان نفوذ کمک میکند تا سطح حمله هدف و آسیب پذیری های احتمالی را ترسیم کنند. شناسایی می تواند بسته به دامنه و اهداف آزمون نفوذ متفاوت باشد
- اسکن کردن (Scanning) تستر های نفوذ از ابزارهایی برای بررسی وب سایت یا سیستم مورد نظر برای نقاط ضعف، از جمله سرویس های باز، مسائل امنیتی برنامه ها و آسیب پذیری های منبع باز استفاده می کنند. هکر های اخلاقی بر اساس آنچه در حین شناسایی و در حین آزمایش پیدا می کنند از ابزارهای مختلفی استفاده می کنند.
- دسترسی یافتن (Access) انگیزه های مهاجم می تواند شامل دزدی، تغییر یا حذف داده ها باشد.برای انجام هر آزمایش، تستکننده های نفوذ بهترین ابزار ها و تکنیک ها را برای دسترسی به سیستم، چه از طریق ضعفی مانند تزریق SQL یا از طریق تروجان و بدافزار، مهندسی اجتماعی یا موارد دیگر، تعیین میکنند.
- حفظ دسترسی هنگامی که متخصصان تست نفوذ به هدف دسترسی پیدا میکنند، حمله شبیهسازی شده آن ها باید به اندازه کافی در ارتباط بماند تا به اهداف خود در استخراج دادهها، اصلاح آنها یا سوء استفاده از عملکرد دست یابند. این در مورد نشان دادن تأثیر بالقوه است.
انواع ابزار های Pentesting کدامند؟
ابزار های مختلفی برای انجام تست نفوذ وجود دارند، اهداف مختلف به مجموعه های مختلفی از ابزارها برای اسکن پورت، اسکن برنامهها، اسکن مشکلات امنیتی Wi-Fi یا نفوذ مستقیم به شبکه نیاز دارند. به طور کلی، انواع ابزارهای تست نفوذ در پنج دسته قرار می گیرند.
- ابزار های شناسایی برای کشف میزبان (HOST) شبکه و پورت های باز
- اسکنر های آسیب پذیری برای کشف مشکلات در سرویس های شبکه، برنامههای کاربردی وب و API ها
- ابزارهای پراکسی مانند پروکسی های وب تخصصی یا پروکسی های عمومی man-in-the-middle
- ابزارهای بهره برداری برای دستیابی به جای پای سیستم یا دسترسی به دارایی ها
- Post Exploitation ابزاری برای تعامل با سیستم ها، حفظ و گسترش دسترسی و دستیابی به اهداف حمله
تفاوت تست نفوذ دستی با تست خودکار چیست؟
اگرچه تست نفوذ (Pentesting) عمدتاً یک تلاش دستی است، اما متخصصین تست نفوذ از ابزار های اسکن و تست خودکار استفاده می کنند. اما آن ها همچنین از ابزارها فراتر می روند و از دانش خود در مورد آخرین تکنیک های حمله برای ارائه آزمایش های عمیق تر از ارزیابی آسیب پذیری (یعنی آزمایش خودکار) استفاده می کنند.
تست نفوذ خودکار دستی
آزمایش خودکار دستی آسیب پذیری ها و نقاط ضعفی را که در فهرست های محبوب گنجانده نشدهاند (مانند ۱۰ OWASP) آشکار میکند و منطق تجاری را که آزمایش خودکار میتواند نادیده بگیرد (مانند اعتبارسنجی دادهها، بررسی یکپارچگی) آزمایش میکند. یک آزمایش خودکار دستی همچنین می تواند به شناسایی موارد مثبت کاذب گزارش شده توسط آزمایش خودکار کمک کند. از آنجایی که تسترهای نفوذ متخصصانی هستند که مانند مهاجمان فکر میکنند. میتوانند داده ها را برای هدف قرار دادن حملات خود تجزیه و تحلیل کنند و سیستم ها و وبسایت ها را به روشهایی آزمایش کنند، که راه حل های آزمایش خودکار طبق یک روال اسکریپت شده نباشد.
تست نفوذ خودکار
تست خودکار نتایج سریعتری را تولید میکند و به متخصصان کمتری نسبت به فرآیند تست نفوذ دستی نیاز دارد. ابزارهای تست خودکار نتایج را به طور خودکار ردیابی میکنند و گاهی اوقات میتوانند آنها را به یک پلتفرم گزارش متمرکز صادر کنند. همچنین، نتایج آزمایش های خودکار دستی میتواند از آزمونی به آزمون دیگر متفاوت باشد. در حالی که اجرای مکرر آزمایش خودکار روی یک سیستم نتایج یکسانی را ایجاد میکند.
امیدوارم این مقاله آموزشی برای شما مفید واقع شده باشه 🙂