امیرحسین تنگسیری نژاد
مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

حمله ZeroLogon و نحوه کشف و پیاده سازی آن

در ماه سپتامبر سال 2020 خبری بسیار مهمی منتشر شد که حاکی از حمله ایی بسیار قدرتمند از سمت آسیب پذیری پروتکل NetLogon در تمامی نسخه های ویندوز بود‌. این حمله با عنوان ZeroLogon و با CVE-2020-1472 به ثبت رسیده است و روز به روز درحال گرفتن قربانی و آسیب رسانی به سازمان های داخلی و خارجی بود از این بابت این حمله با هدف قرار دادن Domain Controller تهدید بسیار مهمی به حساب می آمد. 

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

حمله ZeroLogon چگونه عمل میکند؟

همانطور که اشاره شد این حمله با هدف قرار دادن Domain Controller میتواند با وجود آسیب پذیری مخربی که در نحوه احراز هویت و الگوریتم AES وجود دارد از طریق یک کاربر بسیار ساده عضو Domain Controller دسترسی خود را به سطح ادمین برساند و با جعل هویت و یک پسورد خالی به کل شبکه و کاربران مسلط شود.
بهرداری از این آسیب پذیری به این شکل میباشد که میبایست یک ارتباط جدید ایجاد شود و با استفاده از ارسال مقدار های مخرب رمز عبور را به یک مقدار Null تغییر دهد و خود را به دسترسی ادمین ارتقا دهد.‌ به طور دقیق تر فرد مهاجم این توانایی را دارد با ارسال پیغام های NetLogon که با مقدار زیادی صفر در فیلد ClientCredential رمز عبور مورد نظر را تغییر دهد.

حمله ZeroLogon و نحوه کشف و پیاده سازی آن
داشتن دسترسی سطح Admin برای فرد مهاجم زیان های بسیاری را به سازمان و شبکه مورد نظر وارد میکند زیرا آن فرد توانایی دسترسی به تمامی داده های مهم درون شبکه را پیدا خواهد کرد و علاوه بر این تنظیمات و مدیریت کل شبکه یه دست آن فرد مهاجم میوفتد و از این رو این عمل برای ما اصلا خوش آیند نمیباشد.
اما این موضوع فقد اینجا به اتمام نمیرسید که به سبب این آسیب پذیری یک حفره ایی به منظور نفوذ و دسترسی به منابع مهم درون شبکه ما شود برای همین نیز حملات متعدد باج افزار ها نیز میتوانند با این آسیب پذیری بسیاری از سیستم ها و شبکه هارا تحت تاثیر خود قرار دهندآیا Patch برای این آسیب پذیری ارائه شده است؟

بله شرکت مایکروسافت در آگوست 2020 Patch های را برای این آسیب پذیری ارائه کرده است و انتظار میرود که در فوریه 2021 نیز Patch های نهایی این آسیب پذیری را ارائه کند.

پروتکل NetLogon چیست

حال که این آسیب پذیری را در NetLogon بررسی کردیم کمی هم از زبان مایکروسافت بشنویم و ببینیم که در رابطه با مشکل امنیتی که به وجود آمده چه حرفایی های برای ما دارد...؟
پروتکل ZeroLogon از RPC برای ایجاد یک ارتباط و احراز هویت کلاینت در شبکه های مبنی بر دامین استفاده میکند و از رابط RPC پروتکل NetLogon برای تکثیر سازی پایگاه داده Backup Domain Controller
پروتکل NetLogon با استفاده از RPC به منظور‌ ایجاد فرآیند احراز هویت کلاینت به شکل زیر عمل می‌کند

حمله ZeroLogon و نحوه کشف و پیاده سازی آن

حال اشکال این فرآیند درکجاست؟!

در این فرآیند که Client/Server Challenge و Session Key ها ردوبدل میشود آسیب پذیری درون AES CFB8 موجب به وجود آمدن مشکلات بسیاری میشود.

حمله ZeroLogon و نحوه کشف و پیاده سازی آن

چگونه حمله ZeroLogon را کشف کنیم؟

این حمله آثار بسیار زیادی از خود به جای میگذارد که میتوان از آنهارا برای کشف این حمله استفاده کرد. برای مثال یکی از این آثار Windows Event ID 4742 میباشد یا میتوان از Rule های برای Snort ارائه شده است استفاده کرد
از این بابت ما از نرم افزار Cynet.ZerologonDetector.exe نیز به صورت عملی نیز استفاده میکنیم، این نرم افزار توانایی کشف حملات ZeroLogon را دارد. 

چگونه حمله ZeroLogon را پیاده سازی و کشف کنیم؟

برای اینکار کافیست به شکل زیر عمل کنیم:

حمله ZeroLogon و نحوه کشف و پیاده سازی آن

دریافت PoC و Exploit این آسیب پذیری(در همین مقاله نیز ضمیمه شده است)

نرم افزار Cynet.ZerologonDetector.exe نیز در همین مقاله ضمیمه شده است

موفق باشید


امیرحسین تنگسیری نژاد
امیرحسین تنگسیری نژاد

مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

متخصص امنیت اطلاعات و کارشناس شکار تهدیدات بانک ملی ایران ، دارای مدارک مختلف از Splunk و AWS و Fortinet و Huawei حوزه اصلی فعالیت بنده در زمینه شبکه مباحث R&S و Service Provider می‌باشد و در زمینه امنیت نیز در موقعیت های مختلفی مانند PenTest و SoC فعالیت داشته و دارم. سابقه همکاری با بعضی سازمان های در قالب پروژه و... را داشته ام الان به عنوان تحلیلگر امنیت سایبری در زیرساخت بانک ملی مشغول به کار هستم. لینکداین: https://www.linkedin.com/in/amirhoseintangsirinezhad/

نظرات