در ماه سپتامبر سال 2020 خبری بسیار مهمی منتشر شد که حاکی از حمله ایی بسیار قدرتمند از سمت آسیب پذیری پروتکل NetLogon در تمامی نسخه های ویندوز بود. این حمله با عنوان ZeroLogon و با CVE-2020-1472 به ثبت رسیده است و روز به روز درحال گرفتن قربانی و آسیب رسانی به سازمان های داخلی و خارجی بود از این بابت این حمله با هدف قرار دادن Domain Controller تهدید بسیار مهمی به حساب می آمد.
دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
حمله ZeroLogon چگونه عمل میکند؟
همانطور که اشاره شد این حمله با هدف قرار دادن Domain Controller میتواند با وجود آسیب پذیری مخربی که در نحوه احراز هویت و الگوریتم AES وجود دارد از طریق یک کاربر بسیار ساده عضو Domain Controller دسترسی خود را به سطح ادمین برساند و با جعل هویت و یک پسورد خالی به کل شبکه و کاربران مسلط شود.
بهرداری از این آسیب پذیری به این شکل میباشد که میبایست یک ارتباط جدید ایجاد شود و با استفاده از ارسال مقدار های مخرب رمز عبور را به یک مقدار Null تغییر دهد و خود را به دسترسی ادمین ارتقا دهد. به طور دقیق تر فرد مهاجم این توانایی را دارد با ارسال پیغام های NetLogon که با مقدار زیادی صفر در فیلد ClientCredential رمز عبور مورد نظر را تغییر دهد.
داشتن دسترسی سطح Admin برای فرد مهاجم زیان های بسیاری را به سازمان و شبکه مورد نظر وارد میکند زیرا آن فرد توانایی دسترسی به تمامی داده های مهم درون شبکه را پیدا خواهد کرد و علاوه بر این تنظیمات و مدیریت کل شبکه یه دست آن فرد مهاجم میوفتد و از این رو این عمل برای ما اصلا خوش آیند نمیباشد.
اما این موضوع فقد اینجا به اتمام نمیرسید که به سبب این آسیب پذیری یک حفره ایی به منظور نفوذ و دسترسی به منابع مهم درون شبکه ما شود برای همین نیز حملات متعدد باج افزار ها نیز میتوانند با این آسیب پذیری بسیاری از سیستم ها و شبکه هارا تحت تاثیر خود قرار دهندآیا Patch برای این آسیب پذیری ارائه شده است؟
بله شرکت مایکروسافت در آگوست 2020 Patch های را برای این آسیب پذیری ارائه کرده است و انتظار میرود که در فوریه 2021 نیز Patch های نهایی این آسیب پذیری را ارائه کند.
پروتکل NetLogon چیست
حال که این آسیب پذیری را در NetLogon بررسی کردیم کمی هم از زبان مایکروسافت بشنویم و ببینیم که در رابطه با مشکل امنیتی که به وجود آمده چه حرفایی های برای ما دارد...؟
پروتکل ZeroLogon از RPC برای ایجاد یک ارتباط و احراز هویت کلاینت در شبکه های مبنی بر دامین استفاده میکند و از رابط RPC پروتکل NetLogon برای تکثیر سازی پایگاه داده Backup Domain Controller
پروتکل NetLogon با استفاده از RPC به منظور ایجاد فرآیند احراز هویت کلاینت به شکل زیر عمل میکند
حال اشکال این فرآیند درکجاست؟!
در این فرآیند که Client/Server Challenge و Session Key ها ردوبدل میشود آسیب پذیری درون AES CFB8 موجب به وجود آمدن مشکلات بسیاری میشود.
چگونه حمله ZeroLogon را کشف کنیم؟
این حمله آثار بسیار زیادی از خود به جای میگذارد که میتوان از آنهارا برای کشف این حمله استفاده کرد. برای مثال یکی از این آثار Windows Event ID 4742 میباشد یا میتوان از Rule های برای Snort ارائه شده است استفاده کرد
از این بابت ما از نرم افزار Cynet.ZerologonDetector.exe نیز به صورت عملی نیز استفاده میکنیم، این نرم افزار توانایی کشف حملات ZeroLogon را دارد.
چگونه حمله ZeroLogon را پیاده سازی و کشف کنیم؟
برای اینکار کافیست به شکل زیر عمل کنیم:
دریافت PoC و Exploit این آسیب پذیری(در همین مقاله نیز ضمیمه شده است)
نرم افزار Cynet.ZerologonDetector.exe نیز در همین مقاله ضمیمه شده است
موفق باشید