ماژول جدیدی از TrickBot شناسایی شده که بانک داده Active Directory بر روی سرورهای موسوم به Domain Controller را هدف قرار میدهد.
بدافزار TrickBot معمولاً از طریق بدافزارهای دیگر از جمله بدافزار Emotet بر روی سیستمهای آلوده دریافت و نصب میشود. هرزنامههای با پیوست فایل Word مخرب اصلیترین روش انتشار Emotet است.
بهمحض نصب شدن TrickBot، بدافزار اقدام به جمعآوری اطلاعات مختلف از روی دستگاه قربانی کرده و در ادامه برای توزیع خود در سطح شبکه و استخراج اطلاعات بیشتر تلاش میکند.
برای انجام این امور، TrickBot چندین ماژول را که هر یک دارای قابلیتهای خاصی است دانلود میکند. از جمله این قابلیتها میتوان به سرقت کوکیها، اطلاعات مرورگر، کلیدهای OpenSSH و آلودهسازی دستگاههای دیگر اشاره کرد.
این بدافزار دائماً در حال تکامل، اکنون مجهز به ماژول جدیدی با نام ADll شده که به گفته محقق کاشف آن قادر به اجرای مجموعهای از فرامین Windows بهمنظور سرقت بانک داده Active Directory است.
برای بررسی روش کار این ماژول جدید بهتر است که ابتدا مروری بر فایلی خاص با نام ntds.dit داشته باشیم.
زمانی که نقش Domain Controller بر روی یک سرور فعال میشود بهصورت پیشفرض یک بانک داده Active Directory در مسیر C:\Windows\NTDS ایجاد میگردد.
درون این پوشه فایلی با نام ntds.dit قرار دارد که بانک دادهای از تمامی اطلاعات مرتبط با سرویسهای Active Directory نظیر نامهای کاربری، رمزهای عبور، گروهها، کامپیوترها و مواردی از این قبیل است.
با توجه به حساسیت بالای این اطلاعات، Windows اقدام به رمزگذاری دادهها با استفاده از BootKey ذخیره شده در گروه System محضرخانه (Registry) میکند. از آنجا که ntds.dit همواره توسط Domain Controller مورد استفاده قرار میگیرد در حالت عادی امکان دستیابی به آن با استفاده از عملیات معمول مدیریت فایلها ممکن نیست.
برای آنکه امکان کار با بانک داده ntds.dit در زمان باز بودن آن فراهم باشد، مایکروسافت ابزاری با عنوان ntdsutil را ارائه کرده که نگهداری و مدیریت این بانک داده را ممکن میکند.
با استفاده از ntdsutil راهبر میتواند بهسرعت از طریق فرمان ifm (بر گرفته از Install from Media) از Active Directory رونوشت تهیه کند.
به همین روش TrickBot پس از آلوده کردن Domain Controller از فرمان مذکور برای ساخت رونوشتی از بانک داده Active Directory استفاده کرده و نسبت به سرقت آن اقدام میکند.
به عبارت دیگر ماژول جدید ADll در TrickBot از مزایای فرمان Install from Media برای کپی کردن بانک داده Active Directory و چندین گروه رجیستری و ذخیره آنها در پوشه %Temp% بهره میگیرد. فایلهای ذخیره شده در ادامه فشرده شده و به مهاجمان ارسال میشوند.
ماژول ADll یک شناسه ۸ نویسهای را که از شناسه تخصیص داده شده از سوی TrickBot به دستگاه آلوده برگرفته شده است ایجاد میکند.
ماژول در ادامه از این شناسه در فرامین زیر استفاده میکند:
• ntdsutil “ac in ntds” “ifm” “cr fu %TEMP%\[generated-id]۰.dat” q q
• reg save HKLM\SAM %TEMP%\[generated-id]1.dat /y
• reg save HKLM\SECURITY %TEMP%\[generated-id]2.dat /y
• reg save HKLM\SYSTEM %TEMP%\[generated-id]3.dat /y
با اجرا شدن، فرامین مذکور از بانک داده Active Directory به همراه مجموعههای SAM، Security و SYSTEM در رجیستری رونوشت تهیه میشود.
در ادامه، ماژول وجود فایلها را بررسی کرده، آنها را فشرده نموده و سپس فایل فشرده شده را به سرورهای مهاجمان ارسال میکند.
اکنون مهاجمان با دسترسی داشتن به این فایلها، میتوانند بانک داده Active Directory را رمزگشایی کرده و نامهای کاربری، درهمساز (Hash) رمزهای عبور، نامهای کامپیوتر، گروهها و سایر دادهها را استخراج کنند.
اینها دادههای باارزشی هستند که گسترش آلودگی و اجرای بدافزارهای دیگر (نظیر باجافزار Ryuk که در برخی موارد توسط TrickBot نصب میشود) را در سطح شبکه برای مهاجمان بهشدت تسهیل میکنند.
برای روشنتر شدن روش کار ماژول ADll در بدافزار TrickBot به مراحل زیر توجه کنید.
با اجرای فرمان زیر از بانک داده Active Directory در مسیر %TEMP%\H00i0Z000.dat رونوشت تهیه میشود:
• ntdsutil “ac in ntds” “ifm” “cr fu %TEMP%\H00i0Z000.dat” q q
همچنین با استفاده از فرامین زیر گروههای SAM، Security و SYSTEM در رجیستری هر کدام در یک فایل در مسیر %TEMP% ذخیره میشوند:
• reg save HKLM\SAM %TEMP%\H00i0Z001.dat /y
• reg save HKLM\SECURITY %TEMP%\H00i0Z002.dat /y
• reg save HKLM\SYSTEM %TEMP%\H00i0Z003.dat /y
در نتیجه اجرای فرامین فوق بانک داده Active Directory به همراه سه فایل حاوی گروههای رجیستری در مسیر %TEMP% قابل مشاهده خواهند شد.
در پوشه H00i0Z001.dat نیز فایل بانک داده (ntds.dit) ذخیره شده است.
در ادامه با استفاده از ماژولهای DSInternals PowerShell و اجرای فرمان زیر بهسادگی میتوان کلید رمزگشایی BootKey را استخراج کرد:
Get-Bootkey -SystemHivePath ‘.\H00i0Z003.dat
در نهایت میتوان با استفاده از فرمان زیر که جزیی از مجموعه DSInternals است اقدام به رمزگشایی بانک داده و مشاهده تمامی حسابهای کاربری شامل درهمساز رمزهای عبور NTLM کرد.
• Get-ADDBAccount -All -DBPath ‘C:\Users\sanje\Desktop\NTDS\ntds.dit’ -Bootkey [key]
مهاجمان در ادامه قادرند تا با استفاده از این درهمسازها و اجرای آنها توسط برنامههای موسوم به کرک به گذرواژه متن ساده آنها دست پیدا کرده و سپس برای گسترش آلودگی در سطح شبکه از آنها استفاده کنند.
بهرهجویی و سوءاستفاده از Active Directory بهمنظور توزیع بدافزارها و اجرای حملات سایبری موضوعی جدی است که راهبران این سرورها میبایست به آن توجهی خاص داشته باشند.
نشانههای آلودگی (IoC):
هش:
- a67fd45d419497483051d33f3df40490
منبع :