به عنوان یک متخصص امنیت شبکه شما باید بتوانید در برابر حملات Enumeration و درج اطلاعاتی هویتی از سرور یا سرویس هایتان ، آنها را امن کنید. در این مقاله می خواهیم به روشهای مقابله با حملات Enumeration بپردازیم و ایمن سازی شبکه در برابر اینگونه حملات را با هم مرور کنیم.
دقت کنید که جلوگیری از LDAP Enumeration اصلا به سادگی جلوگیری از Enumeration در سایر سرویس ها نیست به دلیل اینکه اگر به درستی این سرویس کار نکند کل فعالیت شبکه داخلی شما که بعضا مبتنی بر Active Directory است دچار اختلال می شود.
در واقع بهترین راهکار جلوگیری از LDAP Enumeration بدون اینکه مشکلی برای کاربران به وجود بیاید استفاده از مکانیزم Application Virtualization ای مثل Citrix است که به شما یک Remote Session می دهد که بتوانید کارهای خودتان را انجام بدهید اما طبیعتا هر کسی نمی تواند با استفاده از این مکانیزم همه کاربران شبکه را به استفاده از این ابزار هدایت کند.
جلوگیری از LDAP Enumeration بایستی خیلی با احتیاط انجام شود و از جمله مواردی است که شما به خیلی چیزها باید توجه کنید که دچار مشکل نشوند. اما بصورت کلی استفاده کردن از پروتکل NTLM و به ویژه NTLMv3 در شبکه برای برقراری ارتباط با Active Directory و همچنین استفاده از Basic Authentication در ارتباطات باعث کاهش ریسک این تکنیک می شود ،
شما باید سعی کنید که ترافیک عبوری را محدود به کاربران عضو دومین و از طریق پروتکل های امنی مثل SSL یا IPsec رد و بدل کنید. و آخرین گزینه که یک قابلیت مبهم سازی هم می باشد این است که از همان ساختار نامگذاری ایمیل ها برای نامگذاری کاربران شبکه استفاده نکنید.
دقت کنید که ساده ترین و موثرترین اقدام در خصوص آسیب پذیری های یک سرویس این است که اگر این سرویس مورد نیاز نیست ! پس آن را غیرفعال کنید ! یعنی چیزی که وجود نداشته باشد آسیب پذیری هم نخواهد داشت بنابراین شما باید سرویس یا Agent ای که برای SNMP استفاده نمی شود را از روی سرورها و کلاینت ها و سایر تجهیزاتی که از آن استفاده نمی کنید غیرفعال کنید و به کلی حذف کنید. اگر توانایی حذف کردن این سرویس را ندارید سرویس آن را در سیستم عامل ها غیرفعال یا Disable کنید.
اگر امکان این وجود ندارد که سرویس را غیرفعال کنید یا حذف کنید شما باید Community String های پیشفرضی که برای این سرویس مورد استفاده قرار می گیرد را تغییر بدهید. در واقع با تغییر دادن Default Community String شما خطری به نام Default Passwords را از روی این سرویس حذف کرده اید و امنیت این سرویس را بالا برده اید.
اگر در شبکه های مبتنی بر سیستم عامل های سرور و کلاینت مایکروسافت کار می کنید و امکان استفاده از قابلیت های Group Policy را دارید قابلیتی به نام Additional restrictions for anonymous connections را فعال کنید و بر روی کلاینت ها نیز اعمال کنید از طرفی دسترسی به انواع null session ها از جمله pipe ها و share ها را محدود کنید و در ضمن IPsec را نیز می توانید در شبکه برای رمزنگاری داده ها و ارتباطات استفاده کنید.
فراموش نکنید خواه ناخواه مسدود کردن دسترسی به پورت های مورد استفاده توسط SNMP نیز بسیار موثر است زیرا در صورت عدم امکان غیرفعال کردن این سرویس پورت مورد نظر توسط فایروال حفاظت می شود بنابراین دسترسی به پورت 161 هم بصورت UDP و هم بصورت TCP را مسدود کنید. همچنین به عنوان نکته آخر ، قبل از نصب کردن Component های ویندوز بررسی کنید که آیا همزمان SNMP را نیز نصب می کنند یا خیر اگر اینطور است این Component ها را نصب نکنید.
الان می خواهیم در خصوص نحوه جلوگیری از SMB Enumeration توضیح بدهیم. سرویس SMB سرویسی است که بصورت ذاتی از نظر امنیتی بسیار می تواند خطرناک باشد هرچند که ماهیت برخی از سرویس های حیاتی شبکه نیز بر عهده این سرویس می باشد. اکثر سرویس هایی که در شبکه وابسته به ماهیت اشتراک گذاری هستند اعم از اشتراک گذاری فایل و پرینتر از این سرویس استفاده می کنند.
این روزها به غیر از بحث Enumeration حملات بسیار زیادی در حوزه Ransomware یا باج افزارها نیز بر روی این سرویس انجام می شود که این سرویس را هر روز خطرناکتر از روز قبل می کند اما خواه ناخواه دو حالت وجود دارد برای امن کردن این سرویس ، اگر شما سروری دارید که دارای سرویس های خاصی اعم از DNS یا Web است و ماهیت اشتراک گذاری مثل فایل و پرینتر بر روی آن وجود ندارد می توانید سرویس SMB را به کلی از روی آن حذف کنید.
در سیستم عامل های ویندوزی می توانید از طریق تنظیمات کارت شبکه قابلیت File and Printer Sharing For Microsoft Networks را غیرفعال و Uninstall کنید یا در ویندوزهای سرور می توانید در قسمت Component های موجود SMB را حذف کنید.
بر روی سرورهایی که بصورت مستقیم بر روی اینترنت سرویس دهی می کنند حتما این سرویس را غیرفعال کنید و بصورت کامل از روی سرور حذف کنید ، پورت های 139 و 445 بصورت TCP را از طریق فایروال سیستم مسدود کنید و در نهایت در سیستم عامل های خانواده ویندوز از طریق تنظیمات رجیستری تنظیمات مربوط به جلوگیری از Null Sessions را از طریق RestrictNullSessAccess انجام بدهید تا از خطرات ناشی از Enumeration در امان باشید.
نوبت به روش های جلوگیری از این حملات و امن کردن سرویس SMTP می رسد. امن کردن سرویس SMTP به نسبت سایر سرویس ها تقریبا ساده تر است در وهله اول بررسی کنید که اصلا شما نیاز به سرویس SMTP دارید یا خیر ؟
در بسیاری از موارد شما می توانید پروتکل IMAP را جایگزین این سرویس کرده و بصورت آنلاین همه کارهایتان را انجام بدهید اما اگر مجبور به استفاده از SMTP هستید حتما ارسال ایمیل به گیرندگان ناشناس یا Unknown Receipts را در تنظیمات ایمیل سرور خودتان غیرفعال کنید یعنی تا زمانیکه اعتبار درخواستی که به سمت ایمیل سرور می آید تعیین نشود ایمیل پاسخ به این دومین های ناشناس را ارسال نکنید.
معمولا نرم افزارهای ایمیل سرور اطلاعاتی از نوع ایمیل سرور و نسخه ایمیل سرور را در هر ایمیلی که ارسال می کنند با پیام ها ارسال می کنند که می تواند باعث افشای نسخه ایمیل سرور و در نتیجه انجام حملات مبتنی بر نسخه ایمیل سرور شود ، در تنظیمات هر ایمیل سروری این امکان وجود دارد که از ارسال و در اصطلاح Sign کردن ایمیل ها با نام ایمیل سرور خودداری شود که اینکار را باید در تنظیمات ایمیل سرور انجام بدهید.
در نهایت قابلیت Open Relay را در تنظیمات SMTP سرور غیرفعال کنید. ایمیل سرورها قابلیتی دارند که می توانند چندین آدرس Domain مختلف را بر روی خودشان سرویس دهی کنند و همچنین به عنوان یک Third Party یا نرم افزار جانبی برای ارسال ایمیل سایر دومین ها نیز مورد استفاده قرار بگیرند که به اینکار در اصطلاح فنی Relay کردن گفته می شود. هر تلاشی که برای ارسال کردن ایمیل با آدرس های دومینی به غیر از آدرس های Local خود سرور انجام شود به عنوان Relay نیز شناخته می شود که این قابلیت در ایمیل سرور شما باید غیرفعال شود.
نوبت به ارائه راهکارها برای امنیت بیشتر این سرویس در مقابل حملات DNS Enumeration است . در اولین گام سعی کنید تا زمانیکه به این سرویس مسلط نشده اید و دقیقا مکانیزم کاری آن را درک نکرده اید سرویس DNS عمومی راه اندازی نکنید. این یک پیشنهاد دوستانه از طرف خودم بود
اما بصورت کلی زمانیکه DNS سرور در سیستم عامل های مختلف را نصب و راه اندازی می کنید قابلیت یا گزینه ای وجود دارد که امکان Zone Transfer را فعال یا غیرفعال می کند و در عین حال شما سرورهایی که مجاز به دریافت Zone Transfer هستند را نیز مشخص می کنید. اگر قرار نیست DNS سرور شما Zone Transfer داشته باشد این قسمت را غیرفعال کنید و اگر قرار است با سرورهای خاصی ارتباط و Zone Transfer داشته باشد حتما آدرس های IP آنها را در این میان تعریف کنید.
اگر در شبکه های مبتنی بر سیستم عامل های مایکروسافت هستید و DNS سرور شما ویندوز سرور است و بر روی یک Doman Controller قرار دارد مطمئن شوید که Replication بین Domain Controller ها برای سرویس DNS حتما از طریق اکتیودایرکتوری انجام می شود به زبان ساده تر هیچوقت گزینه نگهداری Zone در قالب فایل در تنظیمات DNS سرور را فعال نگه ندارید مگر در زمانیکه نیاز به کپی کردن Zone داشته باشید. اگر از ترکیب دو نوع DNS سرور داخلی و خارجی یا مکانیزم DNS Split در شبکه استفاده می کنید مطمئن شوید که آدرس های IP Private شما در DNS سرور Public شما قرار نگرفته و بصورت عمومی در دسترس نباشند.
نوع خاصی از رکوردهای DNS به نام HINFO وجود دارد که اطلاعاتی از قبلی نوع سیستم عامل سرور و حتی اطلاعاتی مربوط به نوع CPU و ... را در خود نگه می دارد. شما باید مطمئن باشید که در DNS سرور شما HINFO Record یا چیزی مشابه آن وجود نداشته باشد و چنین رکوردهایی را از مجموعه فایل Zone حذف کنید. در فرآیند مدیریتی DNS هیچوقت رکوردها یا اطلاعات تماسی قرار ندهید که از طریق آن مهاجم بتواند حملات مهندسی اجتماعی را تدارک ببیند و تا جای ممکن اطلاعات هویتی و تماس را از سرویس DNS حذف کنید.
حتما از فرآیند مبهم سازی در رکوردها استفاده کنید و یک الگوریتم مبهم سازی برای خودتان بصورت درون سازمانی و برون سازمانی تعریف کنید برای مثال Accounting.tosinso.com بصورت واضحی نشان می دهد که سرور حسابداری در پشت زمینه این اسم قرار دارد اما وقتی با اسمی مثل 00989121.tosinso.com مواجه شوید مهاجم نمی تواند سرویس پس زمینه را تشخیص بدهد و شناخت شبکه داخلی برایش مبهم تر خواهد شد.
پیش زمینه های ورود به دنیای هک و امنیت قطعا دوره های آموزش شبکه های کامپیوتری و به صورت ویژه دوره آموزش نتورک پلاس است. در دوره آموزش هک قانونمند و یا دوره CEH شما به خوبی با نحوه پیاده سازی چنین حملاتی آشنا می شوید و صد البته مفاهیم مربوط به ماهیت و مفاهیم امنیت شبکه و هک و نفوذ را نیز در دوره آموزش سکیوریتی پلاس آموزش خواهید دید. پیشنهاد می کنم اگر هنوز در خصوص دنیای هک و نفوذ دارای ابهام هستید حتما مقاله چگونه هکر شویم در این لینک را مطالعه کنید. امیدوارم مورد توجه شما عزیزان قرار گرفته باشد. با تشکر محمد نصیری
فراموش نکنید که هم Public Community String و هم Private Community String را تغییر بدهید. با توجه به آسیب پذیری هایی که در نسخه های قدیمی SNMP وجود داشت حتما در صورت امکان و پشتیبانی نرم افزارها یا سیستم عامل های خود ، نسخه SNMP خودتان را حتما به Version 3 ارتقاء بدهید زیرا این نسخه از این سرویس دارای رمزنگاری در لایه پسورد و پیام هایی است که در شبکه منتقل می کند وهمین مورد باعث می شود که امکان شنود اطلاعات توسط مهاجمین به حداقل برسد.
پاسخ ها