ریسکها در واقع خطراتی هستند که حتمی نیستند اما احتمال انها وجود دارد و بخصوص مشکل میتوان درجه پتانسیل انها را با رقمی مشخص نمود. در مدیریت ریسک ها معمولا به اثر عدم قطعیت روی نتیجه و یا هدف توصیف میشوند. این برای اینکه بتوان انها را برای انالیز عناصر فنی شناسائی شده به هنگام تست نفوذ محسوب داشت بسیار کلی است و بر اساس این توصیف است که ترجیح داده میشود که روشهای عملکردی تری انجام شوند.
بسیاری از روشهای مدیریت امنیت یا تستهای نفوذ, روشهائی که برای انالیز ریسکهای انفورماتیک مناسب تر هستند را پیشنهاد میکنند. یکی از این روشها که بسیار محبوبیت دارد روش EBIOS که روش ارزیابی خطرات انفورماتیک است که توسط سازمان ملی امنیت سیستمهای اطلاعاتی توسعه داده شده را بر میگزینند که روش مقابله با حوادثی که بیمی از انها است و عناصر خطرات میباشد. با شناسائی نکات اصلی برای امنیت سیستم اطلاعات و با مشخص ساختن اینکه چه سناریوئی و در چه شرایطی میتواند امنیت انرا بخطر بیاندازد, بطرزی موثر خطرات مربوط به هر نوع ترکیبی براورد میشود. بدینگونه الویت عملیات اسانتر میگردد.
و اما انالیزهائی که با روشهای OWASP (Open Web Application Security Project – اجتماعی انلاین که برای امنیت وب فعالیت دارند) و OSSTMM (Open Source Security Testing Methodology Manual – برای درک و اندازه گیری چگونگی عملکرد امنیت) پیشنهاد میشوند بیشتر به توصیف خطرات در مهندسی شباهت دارند یعنی ترکیب تاثیر و احتمال. هر چه تاثیر ( نقض حریم خصوصی و یا تصویر شرکت و غیره) از درجه بالاتری برخوردار باشد, به همان نسبت خطر مهم تر است. هر چه احتمال رخنه (اسان بودن یافتن مشکلی و یا بهره برداری از یک اسیب پذیری و غیره) بیشتر باشد, ریسک بیشتر است. معمولا ترکیبی از ایندو ترجیح داده میشود.
در یک مرحله بسیار تکنیکی, پن تستر مشکلات را به تنهائی شناسائی کرده و خطر را با ترکیب احتمال و تاثیر براورد مینماید. در مرحله دوم, امنیت سیستم اطلاعات را در کل در نظر گرفته و زمینه یا چهارچوب کاری و حرفه ای سیستمهای تست شده و وقایعی که مشتری بیشتر از انها هراس دارد و سناریوهای ممکن بهره برداری از اسیب پذیریهای که کشف کرده را محسوب میدارد.
و اما هکینگ در تمام اینها چه جائی دارد ؟ بدون اینکه بخواهیم وارد جزئیات شویم باید بگوئیم که هکینگ یک رشته نیست بلکه روشهائی قابل اجرا برای رشته هائی بسیار است که هدف از ان حل مشکلات و افزایش دانش و تمرکز روی استفاده انحرافی از ابزار و تکنیکهای موجود و استفاده از فناوری بصورت تخصصی اما کنجکاوانه است. به عبارتی دیگر و ساده تر میتوان گفت که هکینگ یعنی جایگزین کردن چنگال با سه جفت چاپستیگ یا بگت برای غذا خوردن. کاربرد عملی حتمی نیست اما به مهارت ظریف و ابزار و انحراف فناوریهای معمول نیاز دارد. مثلا فرمان راه دور تلویزیون را پیاده کردن البته نه برای احیانا تعویض باتری بلکه برای درک عملکرد ان و یا اضافه کردن دکمه ای به ان برای استفاده هائی انحرافی یا ساختن ابزار به درد بخور دیگری.
این روش در رشته های بسیاری بخصوص در امنیت انفورماتیک استفاده میشود و باعث پرسشهای بسیاری در این زمینه گشته است. مثلا چه میشود اگر من از این متغیری که تخصیص نیافته استفاده کنم ؟ واکنش برنامه برنامه چه خواهد بود اگر شماره تلفن من به غیر از اعداد چیز دیگری هم داشته باشد ؟ پرسشهای کنجکاوانه بسیاری که باعث کشف های بسیاری چون مثلا اسیب پذیریهائی میگردند.
یک هکر یک حمله گر یا مخرب یا پن تستر نیست اما با اینهمه بهتر است که یک پن تستر همانند وی عمل کند و مرتبا از خود پرسش کند تا مشکلات فنی سیستم که گسترده تر از ان است که هر عنصرش را بتوان کامل کنترل کرد را بیابد.
تا سال 1980 اجتماع هکرها اکثرا از محققین و توسعه دهندگان تشکیل شده بود اما از ان زمان تا کنون بسیار تغییر کرده و حرفه ای های امنیت انفورماتیک و اماتورهائی با انگیزه هائی به این جمع پیوسته اند.
یک پن تستر برای اینکه ماموریت خود را بخوبی انجام دهد باید در جلد یک رخنه گر واقعی رود و یا خود را بجای او بپندارد و حتی از ابزار و روش های یک شخص مخرب استفاده کند.
در روشهای پن تسترها روشهای معمول مخربین نیز قید شده است : شناسائی هدف و عناصر ارزشمند و محدوده قابل حمله و نقاطی که ضعیف به نظر میرسند و رخنه به سیستم و نگاه داشتن دسترسی به ان و پاکسازی و یا محدود کردن اثار و ردهای رخنه و غیره.
اما شباهت به شخص مهاجم به محدوده ای که قرار داد است ختم میشود. محدودیت زمانی, تکنیکهائی که پذیرفته میشوند, اجازه داشتن در مورد بعضی اهداف و غیره که باعث میشوند که همه چیز در چهار چوبی مشخص و تعیین شده انجام شود و مانع از رئالیسم در تستها میگردد. توجه به این مسائل در تستهای رخنه بسیار مهم است.
در حقیقت تست رخنه فعالیتی است که باعث شکوفائی میشود و دری است که بروی امنیت انفورماتیک گشوده میگردد و زمینه ای برای علاقه مند شدن به هکینگ میباشد. ماموریتها معمولا کوتاه و گوناگون هستند و کمتر پن تستر ممکن است حوصله اش سر برود و مسافرت ها هم بسیارند.
اما در عین حال این حرفه ای است که لازمه ان شناخت بسیبار خوب قوانین و اجرای انها است. اما هنوز حرفه ای است که در حال رشد است و بازار وسیعی در پیش رو دارد و درخواستها افزایش میابند و بجز شرکتهائی بسیار بزرگ و صاحب نام که ده سالی پیش که هنوز این حرفه اعتبار چندانی نیافته بود با ان اشنا بودند, اکنون اعتبار بسیار یافته تا جائیکه حتی پروژه های “bug bounty” ظهور کرده اند و شکی نیست که تا سال 2020 باز هم اینده ای روشن در پیش رو دارد
اکنون چند سالی است که انجام تستهای رخنه یا نفوذ برای روسای سیستمهای اطلاعاتی اهمیت یافته و بعضی به انجام انها اصرار دارند و بعضی فقط در چهارچوب خاصی حاضر به انجام انها میشوند و برخی از حضور یک پن تستر در سیستم و شبکه خود هراس دارند. به هر حال…
هدف از این مقاله توضیح روشها و تکنیکهای حملات و تستها نیست بلکه فقط برطرف کردن ابهاماتی در این زمینه است.
در ایالات متحده امریکا به تستهای رخنه یا نفوذ برای یافتن مشکلات امنیتی و اسیب پذیریها “Penetration Test” و یا بیشتر “Pentesting” گفته میشود.
این تستها برای ارزیابی و تهیه گزارش امنیتی یک شرکت و سیستمهایش هستند و فقط به مشاهده و قید انها اکتفا نمیشود بلکه واقعا همانند یک مخرب واقعی به انها حمله میشود تا مشکلات و اسیب پذیریها مشخص گردند و تلاش میشود که به انها رخنه شود تا تاثیر یک حمله واقعی به دست اید و امنیت سیستمهای اطلاعات ارزیابی شود.
اغلب تست رخنه با بررسی امنیتی اشتباه گرفته میشود و هر چند مشکل میتوان ایندو را از یکدیگر متمایز کرد اما دو موضوع کاملا متفاوت هستند که البته هر دو برای اندازه گیری درجه امنیت یک سیستم اطلاعاتی استفاده میشوند.
بررسی امنیتی قبل از هر چیز کنترل یک سیستم و مشخص کردن استاندارد بودن ان بر اساس معیارهائی است که معمولا به امادگیهائی فنی و مدارکی که بیش از یک تست هستند نیاز دارد و محدودیت زمانی دارد و لیست معیارها پایانی دارد و نامنتها نیست و اغلب اوقات نتیجه ان بصورت گزارشی کامل با قید جزئیاتی بر اساس معیارهای استاندارد و دادن امتیاز یا نمره و یا درجه ای از این نظر همراه است.
مثالهائی کلاسیک در این زمینه بررسی نظم و ترتیب تشکیلات و قوانین بانکی و غیره و همچنین کد سورس ها برای اطمینان از اینکه مطابق با الزامات میباشند یا بررسی و کنترل یک پیکربندی هستند.
اما تست رخنه بر عکس ان به یک سری نکاتی که باید کنترل شوند محدود نمیشود و بر عکس وظیفه یک پنت ستر کشف مشکلاتی است که به هنگام کنترلهائی که پیشتر توضیح داده شدند یافت نشده بودند. این تستها میتوانند در زمانی نامحدود انجام گیرند اما تست کننده ناچار است محدودیتهای قرار داد از هر نظر منجمله زمان را رعایت کند. پن تستر باید حتی مجسم کند که کجا و چگونه توسعه دهنده و ادمینیستراتور و حتی کاربران یک سیستم خطائی مرتکب شده اند و به همین دلیل این تستها بسیار رئالیست تر از بررسی ها گفته شده بالا هستند. متاسفانه محدودیت زمانی تحمیلی پن تستر را ناچار میسازد که برای بعضی اسیب پذیریها و تلاشهای رخنه الویت قائل گردد و در نتیجه این ممکن است باعث شود که همان انگیزه فوق العاده و پایداری و استقامت در تلاش همانند یک رخنه گر مخرب را نداشته باشد.