تست نفوذپذیری

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

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

تست نفوذ به راه‌های مختلفی صورت می‌گیرد که عمده‌ترین تفاوت آنها، تفاوت در میزان اطلاعات تست‌کننده درباره سیستم موردنظر است. تست به صورت آزمون جعبه سیاه روشی است که در آن تست‌کننده بدون داشتن هیچگونه اطلاعات قبلی در مورد سیستم انجام می‌دهد و تست جعبه سفید یا تست شفاف (transparent box testing) روشی است که در آن تست کننده مشخصات کامل سیستم را در اختیار دارد. در این میان روش‌های دیگری موجوداند که در آن تنها بخشی از اطلاعات در اختیار تست‌کننده قرار می‌گیرد که به جعبه خاکستری (Gray-box) معروف‌است.
با انجام تست شفاف، می‌توان سیستم را به طور دقیق‌تر و برای موارد بیشتر تست کرد، در صورتیکه با انجام تست جعبه سیاه، ممکن است تمامی حفره‌های موجود مورد بررسی قرار نگیرند، بنابراین در مواقعی که امنیت نقش کلیدی ایفا می‌کند، لازم است که تست شفاف صورت گیرد.

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

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

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

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

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

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

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

پروژه OWASP یا Open Web Application Security Project دارای مطالبی برای کنترل امنیتی وب‌سایت‌ها است برای بسیاری از نکات امنیتی مرجعی مناسب به‌حساب می‌آید و رعایت نکاتی امنیتی گفته شده در آن برای نوشتن هر وب‌سایت به هر زبان برنامه‌نویسی بسیار توصیه می‌شود.

منابع[ویرایش]

اربابی، مهدی. گروه امنیتی آفتاب. تست نفوذپذیری (Penetration test). عصر ارتباط، ۱۶ بهمن ۱۳۸۹، شماره ۳۹۴. PDF