تهدیدات امروز به طور مداوم در حال تغییر هستند و تهدیدهای جدیدی ظهور میکند، در این قسمت میخواهیم به دستههای مختلف تهدیدات شبکه بپردازیم:
- مهاجمان نهایی (Potential Attackers)
که این مورد اشاره دارد به هکرها، تروریستها، کارکنان ناراضی یک شرکت و…
- روشهای حمله (Attack Methods)
یک هکر، به هیچ عنوان دوست ندارد که شناسایی شود، به خاطر همین از روشهایی برای مخفی کردن خود استفاده میکنند و کارهایی را که در زیر لیست شده است را برای نفوذ به شبکه انجام میدهد که شامل:
شناسایی (Reconnaissance) | در اولین قدم هکر با استفاده از نرمافزار خاصی اقدام به شناسایی آدرس IP و پورتهای باز شبکه میکند تا موارد قابل نفوذ را شناسایی کند. |
مهندسی اجتماعی | یکی از روشهای ساده برای بدست آوردن اطلاعات یک سازمان است، در این روش هکر با استفاده از کارمندان یک سازمان اقدام به بدست آوردن اطلاعات مهم آن میکند، مثلاً میتواند با استفاده از ایمیلهای جعلی از کارمندان اطلاعات بگیرد یا اینکه از فیشینگ کردن وبسایتهای مشخص استفاده کند تا به اطلاعات خود دست پیدا کند. |
حداکثر امتیاز | در این روش مهاجم با استفاده از یک کاربر معمولی وارد روتر میشود و با استفاده از حملات brute-force شروع به بدست آوردن حداکثر دسترسی میکند. |
در پشتی (Back doors) | مهاجم بعد از ورود به شبکه اقدام به نصب نرمافزارهای مخرب بر روی کلاینت یا سرور میکند و بعد از آن در هر زمان میتواند به اطلاعات آنها دستگاه دست پیدا کند، مانند نرمافزارهای Key-logging که تمام اطلاعات ورودی از کیبورد را ذخیره و به آدرس خاصی ارسال میکنند. |
اجرای کد (Code execution) | در این روش مهاجم توانایی این را دارد که کدها مورد نظر خود را در سرور سازمان شما اجرا کند که این کار یکی از خطرناکترین حملات است این روش با نام Remote Code Execution یا به اختصار RCE شناخته میشود. |
- راههای حمله (Attack Vector)
این موضوع را به خاطر داشته باشید فرد مهاجم همیشه از بیرون شرکت به شبکه شما حمله نمیکند و شاید کسی از داخل شرکت این کار را انجام دهد، شاید کاربر از سر بیاطلاعی بخواهد بر روی موضوع خاصی کنجکاوی کند و همان موضوع باعث شود حملات درب پشتی (Back doors) انجام شود. برای جلوگیری از این روش باید سیاستهای درست پیادهسازی شود.
- حمله مرد میانی (Man-in-the-Middle Attacks)
حملات مرد میانی با نام Bucket Bridge Attack هم شناخته میشوند، در این نوع حمله مهاجم خود را بین دو سیستم قرار میدهد و از روشهای خاصی برای بدست آوردن اطلاعات سیستمها استفاده میکند، این کار با هدف شناسایی و دستکاری دادهها انجام میشود، این حمله میتواند در لایه دو و یا لایه سه اتفاق بیفتد، هدف اصلی این کار گوش دادن به اطلاعات ردو بدل شده بین دو منبع است.
- سایر روشهای حمله
کانال پنهان (Covert channel) | در این روش اگر شما به عنوان مدیر شبکه اجازه دسترسی به یک وبسایت را در فایروال ببندید، کاربر یا مهاجم با استفاده از VPN و ایجاد تونل در شبکه داخلی باعث میشود این سیاست شما را دور بزند. |
منطقه قابل اعتماد | در این روش اگر در یک فایروال که دارای سه منطقه است و به منطقه خارجی (outside) آن دسترسی کامل دهید، مهاجم با ورود به سرورهای مستقر در منطقه DMZ میتواند به سیستمهای داخل Inside دسترسی پیدا کند، در مورد مناطق شبکه در فصل ششم به صورت کامل صحبت کردیم. |
حملات بی رحمانه با رمز عبور (Brute-force (passwordguessing) attacks) | در این روش مهاجم با استفاده از دیتابیسی از کلمه عبور، تلاش میکند رمز عبور سیستم را حدس بزند که البته با ایجاد سیاست، تعداد تلاش برای وارد کردن رمز عبور، این مورد حل میشود. |
Botnet | در این حمله مهاجم در یک سازمان دارای هزاران سیستم آلوده آماده به کار هست و با استفاده از آنها بدون اطلاع صاحبان شرکت شروع به حمله به یک مقصد مشخص میکند که از این طریق میتوان حملات DDOS را انجام داد. |
حملات DoS and DDoS | این نوع حملات زمانی مشخص میشوند که ترافیک غیر واقعی و بسیار زیاد بر روی سرور وبسایت شما افزایش مییابد و این موضوع باعث میشود دستگاههایی مانند سوئیچ و روتر با افزایش کارکرد CPU روبرو شوند و باعث از کار افتادن آنها میشود در حملات Dos یا denial-of-service مهاجم فقط از طریق یک سیستم شروع به حمله میکند ولی در روش پیشرفتهتر آن یعنی DDoS یا همان distributed denial-of-service از چندین سیستم برای این کار استفاده میشود که روش Botnet میتواند جز آن باشد. |
استفاده از اصول اساسی امنیت در شبکه
در این بخش رویکردهایی برای بهبود شبکه مشخص شده است که میتواند از مواردی که در بالا بیان کردیم پیشگیری کند.
محرمانه بودن (Confidentiality)
برای ایجاد یکپارچگی در اطلاعات باید سطح دسترسی را برای افراد مشخص کنید تا از افشای اطلاعات در بیرون سازمان جلوگیری شود، سه اصل؛ شناسایی(Identification)، احراز هویت(Authentication)، مجوز دسترسی(Authorization) میتواند شما را در این امر بسیار کمک کند، همه این موارد در ادامه کتاب بررسی خواهد شد.
یکپارچگی (Integrity)
این قسمت از سه مرحله قبل یعنی، شناسایی(Identification)، احراز هویت(Authentication)، مجوز دسترسی(Authorization) اطمینان حاصل پیدا میکند، و هدف اصلی آن حفظ یکپارچگی دادهها، از جمله دادههای ذخیره شده در فایلها، پایگاه دادهها، سیستمها و شبکه ها است.
در دسترس بودن (Availability)
در دسترس بودن به این معنی است که اطلاعات در زمان و مکان مورد نیاز فقط برای افرادی که مجوز لازم را دارند همیشه در دسترس باشد.
در دو حوزه میتوان از ویژگی در دسترس بودن خیلی خوب استفاده کرد:
- زمانی که حملات گسترده به شبکه انجام شود و شبکه به طور کامل غیرفعال شود، مانند ویروسهای باجگیر که این روزها شبکههای بسیاری را آلوده کردند و در نوع خاصی از آنها هیچ راهی برای برگشت اطلاعات وجود ندارد.
- زمانی که بلایای طبیعی رخ دهد.
یکی از راههای مهمی که برای در دسترس بودن اطلاعات باید انجام گیرد استفاده از فناوری Raid برای شبکه است تا اطلاعات در سریعترین زمان ممکن در دسترس قرار گیرد.
تعاریف اولیه در امنیت اطلاعات
کمترین امتیاز (Least Privilege)
مفهوم کلی این تعریف در مورد این است که به هر کسی به اندازهی نیازش دسترسی بده، که این موضوع میتواند برای یک کاربر باشد و یا یک فرآیند، برای فعال کردن حداقلها، باید سازمانها تمامی کارکردهای کاربران را شناسایی و بر اساس آن دسترسیها را اولویتبندی کنند تا کسی بیشتر از نیاز خود به منابع شبکه دسترسی نداشته باشد.
یک سری قوانین سازمانی وجود دارد که از اصل کمترین امتیاز (Least Privilege) حمایت میکنند:
- تعداد اکانتهایی که دارای مجوزهای زیاد در شبکه هستند را محدود کنید.
- مدیران شبکه باید از یک اکانت با دسترسی معمولی برای عملیات معمول خود استفاده کنند.
- دسترسیها ابزاری محبوب برای مهاجمها هستش که باید دقت لازم در این زمینه را داشته باشیم و آن را محدود کنیم.
دسترسی به هیچ چیز (Access to Nothing)
سعی کنید به صورت پیشفرض دسترسیها را برای همه کاربرانی که برای اولین بار به شبکه متصل میشوند ببندید، این کار یکی از بهترین عملکردهای امنیتی محسوب خواهد شد که افراد ناشناس نتوانند به راحتی به شبکه دسترسی داشته باشند.
دفاع در عمق (Defense in Depth)
استراتژی دفاع از عمق به این موضوع اشاره دارد که برای ایجاد امنیت باید از چند لایهی امنیتی برای رسیدن به اطلاعات استفاده کرد، یکی از این استراتژی ها استفاده از کنترل دسترسیها در شبکه است.
تفکیک وظایف (Separation of Duties)
برای کاربران باید وظایف مشخص معین شود و هر کسی وظایف مربوط به خود را انجام دهد، با این کار از تقلب در کارها جلوگیری خواهد شد، مثلاً میتوانیم برای یک کار که قرار است انجام شود دو مدیر تعیین کنیم تا هر دو مجوز آن کار را صادر کنند و با یک نفر آن کار انجام نشود.
چرخش کار (Job Rotation)
در این بخش باید آموزشهای لازم داده شود تا از انجام تقلب جلوگیری شود، در چرخش کار باید یک نسخه از اطلاعات شبکه داشته باشیم.