ایمن سازی شبکه (هاردنینگ)
هاردنینگ چیست؟ سیستم هاردنینگ مجموعهای از ابزارها، تکنیکها و بهترین راهکارها برای کاهش آسیبپذیری در برنامههای کاربردی تکنولوژی، سیستمها، زیرساخت، Firmwareها و حوزههای دیگر می باشد. هدف هاردنینگ این است که با حذف مسیرهای حملهی احتمالی و بررسی مجموعه آسیبپذیریهای سیستم، ریسک امنیتی کاهش پیدا کند. با حذف برنامههای زائد، عملکردهای حسابها، برنامههای کاربردی، پورتها، اجازهها، دسترسی و غیره، مهاجمان و بدافزارها، فرصت کمتری برای کسب دسترسی به اکوسیستم IT کاربران دارند.
هاردنینگ نیازمند یک رویکرد روشمند برای ممیزی، شناسایی، بستن و کنترل کردن آسیبپذیریهای امنیتی درون سازمان است. چندین نوع فعالیت برای System Hardening وجود دارد، از جمله:
- Hardening برنامه کاربردی
- Hardening سیستم عامل
- Hardening سرور
- Hardening دیتابیس
- Hardening شبکه
با اینکه اصول سیستم هاردنینگ سراسری هستند، ابزار و تکنیکهای بهخصوص، بسته به نوع Hardening متفاوت میباشند. هاردنینگ در طول چرخهی عمر تکنولوژی از نصب اولیه گرفته، تا پیکربندی حفظ و نگهداری و پشتیبانی تا منسوخ کردن تکنولوژی در انتهای چرخه عمر موردنیاز می باشد. هاردنینگ همچنین یکی از الزامات مجموعه قواعد رسمی مثل PCI DSS و HIPAA می باشد.
امن سازی و مقاوم سازی و کاهش مجموعه آسیبپذیریها با هاردنینگ
مجموعه آسیبپذیریها عبارت است از ترکیب تمام نواقص و Backdoorهای احتمالی در تکنولوژی که هکرها میتوانند آنها را Exploit کنند. این آسیبپذیریها به شیوههای مختلفی رخ میدهند، از جمله:
- رمزهای عبور پیشفرض و Hardcodeشده
- رمزهای عبور و اطلاعات اعتباری دیگر که در فایلهای متنی ساده ذخیره میشوند
- نرمافزارهای Patchنشده و آسیبپذیریهای Firmwareها
- BIOS، فایروال، پورت، سرور، سوئیچ، روتر یا بخشهای دیگری از زیرساخت که به درستی پیکربندی نشده باشند
- ترافیک شبکه بدون رمزگذاری یا Data-At-Rest
- عدم یا کمبود کنترلهای دسترسی دارای سطح بالا
9 مورد از بهترین راهکارها :
- ممیزی سیستمهای موجود: باید یک ممیزی جامع از تکنولوژیهای موجود انجام شود. باید از تست نفوذ، اسکن آسیبپذیری، مدیریت پیکربندی و دیگر ابزار ممیزی امنیتی استفاده شود تا نقصهایی در سیستم پیدا شده و اصلاحات اولویتبندی گردد. میتوان با استفاده از استانداردهای صنعتی از سوی NIST، مایکروسافت، CIS، DISA و غیره ارزیابیهای هاردنینگ را با توجه به منابع انجام داد.
- ساخت یک استراتژی برای سیستم هاردنینگ: نیازی نیست که هاردنینگ برای تمام سیستمها همزمان انجام شود. در عوض میتوان براساس ریسکهای شناساییشده در اکوسیستم تکنولوژی یک استراتژی و برنامه ساخت و با استفاده از یک رویکرد مرحلهای، بزرگترین نقصها را اصلاح نمود.
- Patch کردن آسیبپذیریها بدون وقفه: باید اطمینان حاصل نمود که یک سیستم شناسایی آسیبپذیری و Patch کردن بهصورت جامع و خودکارسازیشده آماده است.
- هاردنینگ شبکه: باید اطمینان حاصل گردد که فایروال بهدرستی پیکربندیشده است و تمام قواعد بهطور منظم ممیزی میشوند؛ کاربران و نقاط دسترسی از راه دور باید ایمن شوند؛ هر پورت شبکهی باز بلااستفاده یا غیرضروری باید بلاک شود؛ باید پروتکلها و سرویسها غیرضروری غیرفعال و حذف گردند؛ فهرستهای دسترسی باید پیادهسازی شوند و ترافیک شبکه باید رمزگذاری گردد.
- هاردنینگ سرور: تمام سرورها باید در یک دیتاسنتر ایمن قرار بگیرند هرگز نباید هاردنینگ را روی سرورهای تولیدی تست کرد؛ همیشه باید پیش از اتصال سرورها به اینترنت یا شبکههای خارجی، هاردنینگ را روی آنها انجام داد؛ باید از نصب نرمافزارهای غیرضروری روی یک سرور اجتناب کرد؛ سرورها باید بهطور مناسبی جداسازی شوند؛ باید اطمینان حاصل گردد که اشتراکهای کاربر ممتاز یا superuser و ادمین بهدرستی تنظیم شدهاند.
- هاردنینگ برنامه کاربردی: تمام اجزا و عملکردهایی که مورد نیاز نیستند باید حذف گردند؛ دسترسی به برنامههای کاربردی براساس نقشهای کاربران و ساختار مثل کنترل برنامه کاربردی باید محدود گردد؛ تمام فایلهای نمونه و رمزهای عبور پیشفرض باید حذف شوند. رمزهای عبور برنامه کاربردی باید از طریق یک راهکار مدیریت رمز عبور برنامه کاربردی یا مدیریت رمز عبور سطح دسترسی که بهترین راهکارهای رمز عبور را اعمال میکنند مانند تغییر رمز عبور، طول آن و غیره مدیریت گردند. Hardening برنامههای کاربردی همچنین باید شامل بررسی یکپارچهسازیها با برنامههای کاربردی و سیستمهای دیگر و حذف یا کاهش اجزا و سطحهای دسترسی یکپارچهسازی غیرضروری باشد.
- هاردنینگ دیتابیس: باید محدودیتهای ادمین ایجاد گردد، مثلاً با کنترل دسترسی سطح بالا در مورد اینکه کاربران در دیتابیس چه کاری میتوانند انجام دهند؛ چک کردن Node باید برای بررسی برنامههای کاربردی و کاربران روشن شوند؛ اطلاعات دیتابیس باید هم در حالت انتقال و هم At-Rest رمزگذاری گردد؛ رمزهای عبور ایمن باید اعمال شود؛ سطحهای دسترسی کنترل دسترسی مبتنی بر نقش یا RBAC باید معرفی شوند و حسابهای کاربری بلااستفاده باید حذف گردند.
- هادنینگ سیستم عامل: باید بروزرسانیهای سیستم عامل، Service Packها و Patchها بهطور خودکار اعمال شوند؛ درایورها، اشتراک فایل، Libraryها، نرمافزار، خدمات و عملکردهای غیرضروری باید حذف شوند؛ Local Storage باید رمزگذاری گردد؛ Registry و اجازههای سیستمهای دیگر باید سفتوسخت شوند؛ تمام فعالیتها، خطاها و هشدارها باید Log گردند و کنترلهای کاربر با سطح دسترسی بالا باید اعمال شود.
- حذف حسابها و سطوح دسترسی غیرضروری: با حذف حسابهای کاربری غیرضروری مثل حسابهای Orphaned و حسابهای بلااستفاده و سطوح دسترسی در کل زیرساخت IT.
مزایای هاردنینگ چیست؟
هاردنینگ نیازمند تلاشهای مداومی است، اما این تلاشها مزایای بسیار زیادی برای سازمان خواهد داشت، از طریق:
- بهبود عملکرد سیستم: ازآنجاییکه برنامههای کمتر و عملکردهای کمتر یعنی ریسک کمتری برای مسائل عملیاتی، پیکربندیهای اشتباه، عدم تطبیق و نقض امنیتی وجود دارد.
- بهبود شدید امنیت: کاهش مجموعه آسیبپذیریها یعنی کاهش ریسک نقضهای امنیتی داده، دسترسی غیرمجاز، هک سیستم یا بدافزار.
- تسهیل تطبیقپذیری و قابلیت ممیزی: کاهش برنامهها و حسابها، همراه با کاهش پیچیدگی محیط معنی ممیزی محیط معمولاً شفاف و ساده خواهد بود.