یکی از سخت ترین کارها در حوزه امنیت توجیه کردن کاربران به استفاده از رمزهای عبور مناسب و عدم کپی کردن آن از سایر همکاران می باشد. تفاوتی هم بین سمت شغلی کاربران وجود ندارد از مدیران تا کارشناسان ساده هیچ کدام به این اصل پایبند نیستند پس کارشناسان و مدیران امنیت از هر سیستم با هر مکانیزمی استفاده کنند تقریبا میتوان گفت که بی اثر می باشد.زیرا به راحتی هکرها وارد سازمان می شوند با استفاده از یک رمزعبور ناامن.
استفاده از یک Policy درست، برای انتخاب و استفاده رمزهای عبور یکی از شروط اصلی میباشد. اکثر شرکتهای ایرانی بر پایه سرویسهای مایکروسافت میباشند و از سرویس Active Directory جهت دسترسی و احراز هویت استفاده میکنند که این سرویس به صورت پیشفرض یکسری Policy دارد که می توان بخشی از پیش نیازها را برآورده کند که عبارتند از Password History ،Complexity،Password Length و… . قواعد و قوانین ذکر شده در اکثر مواقع به راحتی دور می خورد برای مثال یکی از پسوردهایی که به راحتی این قوانین را دور می زند عبارتست از “P@ssw0rd” که با توجه به بررسی انجام شده در سایت Kaspersky این پسورد در کمتر از یک ثانیه قابل شناسایی میباشد.
فکر می کنم تا الان این مشکل به طور کامل توضیح داده شده است که در صورت عدم رعایت و نادیده گرفتن آن چه خطراتی و پیامدهایی برای سازمان به دنبال دارد. حال شما این شرایط رو با این دیدگاه بررسی کنید که یک سازمان همزمان از سرویسهایی متنوع مثال Exchange ،Power BI ،SharePoint و VPN که با استفاده از سرویس Radius از Active Directory احراز هویت میکند استفاده کند. پس می توان گفت که یک سری دریچه جدید برای ورود هکها باز است که می توانند با استفاده از یک سری سرور اجاره با استفاده از Script های متنوع Attack رایج Brute-force را به سرور ها شروع کنند. یکی از راهکارها این هست که اگر برای یک نام کاربری بر طبق Policy بیش از حد مجاز پسورد اشتباه وارد شود برای مدت زمانی مشخص Lock شود. این راهکار تاخیر جزئی در پیدا کردن مرزعبور می اندازد ولی راه حل درست و کاربری نیست زیرا یکی از راههای راحت برای دور زدن، حمله در ساعت اداری هست یعنی زمانی که کاربر در حال استفاده از سیستم می باشد و برای مثال از نرم افزاری مثل Outlook نیز استفاده می کند که در شرکت هایی که بر پایه سرویسهای مایکروسافت هستند بسیار رایج است. در این نوع حملات تست رمزعبور شروع می شود و در صورتی که اشتباه باشد مدت زمان کوتاهی در حد چند میلی ثانیه متوقف می شود و دوباره تست می کند. دراین زمان نرم افزارهایی مثال Outlook یکبار با سرور Active Directory احراز هویت می کند و مقدار Count ورود پسوردهای اشتباه صفر می شود.یکی دیگر از روشهای پرکاربرد استفاده از روش Password Spraying میباشد.به این ترتیب که یکسری Username که به صورت عمومی در بسیاری از سازمانها وجود دارد و یا لیست کاربران سازمان در اختیار هکرها است.درنتیجه پسوردهای معروف بر روی تمامی آن ها تست میشود. به عبارت دیگر برای تست پسورد شماره یک که می تواند”1234567″ باشد بر روی تمامی کاربران تست شده و وقتی به کاربر شماره یک می رسد مقدار Counter آن صفر شده است.
در سازمانهای بزرگ تر برای جلوگیری از چنین حملاتی از WAF ها استفاده می شود که باید به درستی پیکریندی شود در غیر این صورت کارایی لازم را ندارد که در سرویسهایی که مبتنی بر مایکروسافت هستند به دلیل گستردگی بیش از حد پیکربندی آن بسیار دشوار است.
راه حل هایی برای جلوگیری از این نوع حملات وجود دارد که یکی از پرکاربرد ترین آن ها استفاده از لیست سیاه رمزعبور یا Blacklist Password میباشد در این حالت به طور کلی استفاده از این نوع مرزهای عبور جلوگیری می شود. یکی از روش ها استفاده از یک DLL به نام Password در Active Directory میباشد. مشکل اصلی این DLL محدودیت در لاگ کردن تغییرات و سختی درپیادهسازی است.
در سال 2019 یکی از MVPهای مایکروسافت به نام Ryan Newington راه حل را ارائه داد که با استفاده از آن میتوان یک Blacklist ایجاد و با استفاده از Group Policy به کل دامنه منتقل کرد. نام این نرم افزار Lithnet میباشد که می توان به صورت رایگان از GitHub نیز دانلود کرد.
ویژگی های نرم افزار:
- امکان افزودن یکباره یک سری پسورد Hash شده و یا Clear Text – می توان این لیست پسوردها را دانلود یا با استفاده از PowerShell ساخت
- مراحل ساده جهت پیاده سازی و اجرا
- لاگ کردن تمامی جزئیات در Event Viewer با استفاده از Tag های خاص به صورت پیش فرض
- امکان افزودن پسورد های خاص پس از کانفیگهای ابتدایی
- امکان استفاده در سازمانهایی که بیش از یک Domain Controller که قابل Write است دارند
- جالب ترین ویژگی استفاده از Banned Word به صورت Custom شده است. یعنی اگر شما برای مثال رمزعبور “Password” رو محدود کرده باشید و پسورد “P@ssw0rd” را محدود نکرده باشد با استفاده از این ویژگی پسورد دوم نیز محدود می شود. روش کار این ویژگی به این صورت می باشد که @=a و 0=o است.پس رمزعبور “P@ssw0rd” با توجه به ویژگی اشاره شده به “Password” تبدیل میشود و با توجه به این که پسورد اعلام شده جزو لیست سیاه است امکان استفاده آن وجود ندارد
یک سری از لاگ های موجود در Event Viewer
در نتیجه استفاده از Blacklist Password حتی در صورت داشتن تجهیزات امنیتی از قبیل WAF حتما پیشنهاد می شود.زیرا در هرحالت استفاده از پسوردهای معروف در سازمان حذف شده و در گامهای بعدی استفاده از قالب های پسورد را از بین می برد و سازمان به امنیت قابل قبولی از نظر پسورد می رسد.
لازم به ذکر است که در پست دیگر مراحل کانفیگ ارائه می شود.
[…] نوشتاری در ارتباط با Blacklist کردن پسوردها در Active Directory نوشتیم. داخل این پست میخوایم مراحل پیکربندی ابتدایی این سرویس […]