فصل ۱: متدولوژی تست نفوذ (PTES)
تست نفوذ چیست، تفاوت آن با اسکن آسیبپذیری، استاندارد PTES و هفت فاز آن، انواع Black Box/White Box/Gray Box، قواعد درگیری (RoE)، ملاحظات قانونی و اخلاقی و برنامههای Bug Bounty.
تست نفوذ چیست؟
تست نفوذ (Penetration Testing) فرایند قانونی و مجاز ارزیابی امنیتی است که در آن یک متخصص امنیت، با استفاده از همان تکنیکها و ابزارهایی که یک مهاجم واقعی بهکار میگیرد، سعی میکند وارد سیستم، شبکه یا اپلیکیشن هدف شود. هدف نهایی، یافتن نقاط ضعف پیش از مهاجم واقعی و ارائه راهکارهای اصلاحی است.
تفاوت کلیدی یک Penetration Tester با یک هکر مخرب در سه چیز خلاصه میشود: اجازه کتبی، دامنه تعریفشده و گزارشنویسی شفاف. بدون این سه، حتی موفقترین نفوذ نیز یک جرم کیفری است.
هشدار حقوقی — بدون اجازه کتبی نزنید
هرگونه تست نفوذ بدون اجازه کتبی و امضاشده از مالک سیستم، در اکثر کشورها از جمله ایران (قانون جرایم رایانهای مصوب ۱۳۸۸) جرم کیفری محسوب میشود و میتواند تا حبس طولانیمدت منجر شود. حتی اگر فقط «کنجکاو» باشید و قصد مخربی نداشته باشید، قانون روی خشونت عمل میکند. اول قرارداد، بعد اسکنر.
تفاوت تست نفوذ با اسکن آسیبپذیری
بسیاری از سازمانها این دو را اشتباه میگیرند. در حالی که اسکنر (مثل Nessus) صرفاً با امضاهای از پیش تعریفشده نسخهها را چک میکند و گزارشی از «احتمال» وجود آسیبپذیری میدهد، تست نفوذ بهطور دستی و با زنجیرهسازی چند آسیبپذیری، نشان میدهد که آیا واقعاً میتوان به سیستم نفوذ کرد یا خیر.
| ویژگی | اسکن آسیبپذیری | تست نفوذ |
|---|---|---|
| رویکرد | خودکار و مبتنی بر امضا | ترکیبی از خودکار و دستی |
| خروجی | فهرست CVEهای احتمالی | اثبات عملی استثمار |
| عمق | سطحی تا متوسط | عمیق و زنجیرهای |
| زمان | چند ساعت | چند روز تا چند هفته |
| نیاز به مهارت | کم | بالا (OSCP/CEH سطح) |
استاندارد PTES — هفت فاز
استاندارد اجرای تست نفوذ (Penetration Testing Execution Standard) چارچوب مرجع صنعت است که در هفت فاز مشخص جریان کار را تعریف میکند.
فاز ۱ — تعامل پیشقرارداد (Pre-engagement Interactions)
تمام توافقها در این فاز شکل میگیرد: دامنه (Scope)، تایملاین، نوع باکس (Black/White/Gray)، قواعد درگیری (RoE)، نحوه گزارشدهی و دستمزد. خروجی این فاز معمولاً یک SOW (Statement of Work) و یک NDA امضاشده است.
فاز ۲ — جمعآوری اطلاعات (Intelligence Gathering)
در این فاز که به آن شناسایی و OSINT نیز گفته میشود، تستر هر آنچه را که بهصورت عمومی درباره هدف یافت میشود جمعآوری میکند؛ زیردامنهها، ایمیلها، کارکنان، تکنولوژیهای استفادهشده و حتی معماری شبکه از طریق منابع باز.
فاز ۳ — تحلیل تهدید (Threat Modeling)
مدلسازی تهدید بر اساس داراییهای ارزشمند سازمان و احتمال هدف قرار گرفتن آنها انجام میشود. در این فاز از چارچوبهایی مانند STRIDE/DREAD استفاده میشود.
فاز ۴ — تحلیل آسیبپذیری (Vulnerability Analysis)
با ترکیب اطلاعات فاز ۲ و اسکنهای فاز ۳، نقاط احتمالی ورود شناسایی میشوند. این فاز شامل اسکن خودکار، تحلیل دستی پیکربندی و بررسی نسخهها است. جزئیات بیشتر در فصل ارزیابی آسیبپذیری.
فاز ۵ — استثمار (Exploitation)
در این فاز، تستر سعی میکند با استفاده از آسیبپذیریهای یافتشده، به سیستم نفوذ کند. ابزار اصلی این فاز Metasploit است اما اکسپلویتهای سفارشی و دستی نیز نقش مهمی دارند.
فاز ۶ — پس از استثمار (Post-Exploitation)
پس از ورود به سیستم، تستر ارزش دسترسی را ارزیابی میکند: کجا هستیم؟ چه اطلاعاتی قابل دسترسی است؟ آیا میتوان به سیستمهای دیگر حرکت جانبی (Lateral Movement) داشت؟ آیا امکان ارتقاء امتیاز (Privilege Escalation) وجود دارد؟
فاز ۷ — گزارشنویسی (Reporting)
مهمترین فاز از نظر مشتری. گزارش باید شامل خلاصه اجرایی برای مدیران، جزئیات فنی برای تیم IT، میزان ریسک (CVSS)، مراحل بازتولید (PoC) و توصیههای اصلاحی باشد.
انواع تست نفوذ بر اساس آگاهی
| نوع | توضیح | مزیت | معیوب |
|---|---|---|---|
| Black Box | تستر هیچ اطلاعی از داخل سیستم ندارد | شبیهترین حالت به مهاجم واقعی | زمانبر، ممکن است آسیبپذیریهای داخلی را از دست بدهد |
| White Box | تستر به سورسکد، معماری و اعتبارنامه دسترسی کامل دارد | عمیقترین پوشش | گران و زمانبر |
| Gray Box | ترکیبی؛ تستر اطلاعات محدودی دارد (مثل یک کاربر عادی) | تعادل بین عمق و زمان | نیاز به تعریف دقیق دامنه |
قواعد درگیری (Rules of Engagement)
قواعد درگیری یا RoE سندی است که در فاز ۱ امضا میشود و شامل موارد زیر است:
- دامنه دقیق: کدام IPها، دامنهها و اپلیکیشنها مجاز است و کدام ممنوع.
- پنجره زمانی: چه روزها و چه ساعاتی (مثلاً فقط شبها برای کاهش ریسک اختلال).
- محدودیتهای فنی: آیا DoS مجاز است؟ آیا حذف داده مجاز است؟
- اعلان: آیا باید قبل از هر حمله به SOC اطلاع داده شود؟
- کانال ارتباطی اضطراری: شماره تماس ۲۴ ساعته برای توقف فوری.
ملاحظات قانونی و اخلاقی
تست نفوذ در ایران تحت «قانون جرایم رایانهای» (مصوب ۱۳۸۸) و در سطح بینالمللی تحت قوانین ملی هر کشور (مثل CFAA در آمریکا یا Computer Misuse Act در بریتانیا) تنظیم میشود. چند اصل اخلاقی بنیادین:
۱. اجازه کتبی و امضاشده تنها مبنای قانونی است؛ توافق شفاهی کافی نیست. ۲. حداقل دسترسی (Least Privilege): فقط همان دادهای را ببینید که برای اثبات آسیبپذیری لازم است. ۳. افشای مسئولانه (Responsible Disclosure): یافتهها را فقط به مشتری گزارش دهید، نه عموم. ۴. حفظ محرمانگی دادهها: هرگونه داده حساسی که در طول تست پیدا میکنید باید طبق NDA نگهداری و در پایان نابود شود.
برنامههای Bug Bounty
برنامههای Bug Bounty پلتفرمهایی هستند که سازمانها از طریق آنها به محققان امنیتی مستقل پاداش مالی میدهند تا آسیبپذیریهایشان را گزارش کنند. دو پلتفرم شناختهشدهتر عبارتند از:
- HackerOne: پلتفرمی آمریکایی که مشتریانی چون Uber، GitHub و وزت دفاع آمریکا را دارد.
- Bugcrowd: رقیب اصلی HackerOne با پوشش گستردهتر سازمانهای استرالیایی و اروپایی.
شروع Bug Bounty بهعنوان ایرانی
به دلیل تحریمها، دریافت پاداش از HackerOne و Bugcrowd برای کاربران مقیم ایران چالشبرانگیز است. بسیاری از محققان ایرانی از پلتفرمهایی مانند Intigriti، YesWeHack یا برنامههای مستقل شرکتها استفاده میکنند. حتماً قبل از شروع، قوانین مالیاتی و تحریمی را مطالعه کنید.
تمرین عملی — نوشتن سند دامنه (Scope)
یک سند دامنه حداقل باید شامل این بخشها باشد:
1. اهداف مجاز (In-Scope)
- example.com و تمام زیردامنهها
- بازه IP: 192.168.1.0/24
- اپلیکیشن وب: https://app.example.com
2. اهداف غیرمجاز (Out-of-Scope)
- mail.example.com (سرور ایمیل تولیدی)
- هرگونه تست DoS
3. پنجره زمانی
- شنبه تا چهارشنبه، ۲۲:۰۰ تا ۰۶:۰۰ به وقت تهران
4. روشهای مجاز
- اسکن پورت (با نرخ <= 100 پکت/ثانیه)
- استثمار آسیبپذیریهای متوسط و بالا
- بدون حذف یا تغییر داده
5. контакт اضطراری
- نام: تیم SOC
- تلفن: 021-XXXX
- ایمیل: soc@example.comاین سند باید توسط هر دو طرف امضا شود و در طول پروژه در دسترس باشد.
خلاصه و گام بعدی
در این فصل آموختید که تست نفوذ یک فرایند قانونی و ساختاریافته است که بر پایه استاندارد PTES در هفت فاز اجرا میشود و تفاوت اساسی با اسکن آسیبپذیری دارد. بدون اجازه کتبی و دامنه مشخص، هرگونه فعالیت تست نفوذ جرم محسوب میشود.
در فصل بعد، با شناسایی و OSINT — نخستین فاز عملی هر تست نفوذ — آشنا میشوید؛ جایی که با استفاده از منابع عمومی، اطلاعات ارزشمندی درباره هدف جمعآوری میکنید بدون آنکه اصلاً با سرورها ارتباط مستقیم برقرار کنید.
این صفحه در تاریخ ۸ تیر ۱۴۰۵ بهروزرسانی شده است.