نسخه جدید بدافزار TrickBot با توانایی سرقت اطلاعات از اکتیو دایرکتوری ویندوز شناسایی شد
تاریخ انتشار
شنبه ۱۲ بهمن ۱۳۹۸ ساعت ۲۲:۲۳
آیتیمن- به گزارش مرکز افتا، به نقل از پایگاه اینترنتی BleepingComputer، بدافزار TrickBot معمولاً از طریق بدافزارهای دیگر از جمله بدافزار Emotet بر روی سیستمهای آلوده دریافت و نصب میشود. هرزنامههای با پیوست فایل Word مخرب اصلیترین روش انتشار Emotet است.
بهمحض نصب شدن TrickBot، بدافزار اقدام به جمعآوری اطلاعات مختلف از روی دستگاه قربانی کرده و در ادامه برای توزیع خود در سطح شبکه و استخراج اطلاعات بیشتر تلاش میکند.
برای انجام این امور، TrickBot چندین ماژول را که هر یک دارای قابلیتهای خاصی است دانلود میکند. از جمله این قابلیتها میتوان به سرقت کوکیها، اطلاعات مرورگر، کلیدهای OpenSSH و آلودهسازی دستگاههای دیگر اشاره کرد.
این بدافزار دائماً در حال تکامل، اکنون مجهز به ماژول جدیدی با نام ADll شده که به گفته محقق کاشف آن قادر به اجرای مجموعهای از فرمانهای Windows بهمنظور سرقت بانک داده Active Directory است.
برای بررسی روش کار این ماژول جدید بهتر است که ابتدا مروری بر فایلی خاص با نام ntds.dit داشته باشیم.
زمانی که نقش Domain Controller بر روی یک سرور فعال میشود بهصورت پیشفرض یک بانک داده Active Directory در مسیر C:WindowsNTDS ایجاد میگردد.
درون این پوشه فایلی با نام 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 HKLMSAM %TEMP%[generated-id]۱.dat /y
• reg save HKLMSECURITY %TEMP%[generated-id]۲.dat /y
• reg save HKLMSYSTEM %TEMP%[generated-id]۳.dat /y
با اجرا شدن، فرامین مذکور از بانک داده Active Directory به همراه مجموعههای SAM، Security و SYSTEM در رجیستری ویندوز رونوشت تهیه میشود.
در ادامه، ماژول وجود فایلها را بررسی کرده، آنها را فشرده نموده و سپس فایل فشرده شده را به سرورهای مهاجمان ارسال میکند.
اکنون مهاجمان با دسترسی داشتن به این فایلها، میتوانند بانک داده Active Directory را رمزگشایی کرده و نامهای کاربری، درهمساز (Hash) رمزهای عبور، نامهای کامپیوتر، گروهها و سایر دادهها را استخراج کنند.
اینها دادههای باارزشی هستند که گسترش آلودگی و اجرای بدافزارهای دیگر (نظیر باجافزار Ryuk که در برخی موارد توسط TrickBot نصب میشود) را در سطح شبکه برای مهاجمان بهشدت تسهیل میکنند.
برای روشنتر شدن روش کار ماژول ADll در بدافزار TrickBot به مراحل زیر توجه کنید.
با اجرای فرمان زیر از بانک داده Active Directory در مسیر %TEMP%H۰۰i۰Z۰۰۰.dat رونوشت تهیه میشود:
• ntdsutil "ac in ntds" "ifm" "cr fu %TEMP%H۰۰i۰Z۰۰۰.dat" q q
همچنین با استفاده از فرامین زیر گروههای SAM، Security و SYSTEM در رجیستری هر کدام در یک فایل در مسیر %TEMP% ذخیره میشوند:
• reg save HKLMSAM %TEMP%H۰۰i۰Z۰۰۱.dat /y
• reg save HKLMSECURITY %TEMP%H۰۰i۰Z۰۰۲.dat /y
• reg save HKLMSYSTEM %TEMP%H۰۰i۰Z۰۰۳.dat /y
در نتیجه اجرای فرامین فوق، بانک داده Active Directory به همراه سه فایل حاوی گروههای رجیستری در مسیر %TEMP% قابل مشاهده خواهند شد.
در پوشه H۰۰i۰Z۰۰۱.dat نیز فایل بانک داده (ntds.dit) ذخیره شده است.
در ادامه با استفاده از ماژولهای DSInternals PowerShell و اجرای فرمان زیر بهسادگی میتوان کلید رمزگشایی BootKey را استخراج کرد:
Get-Bootkey -SystemHivePath '.H۰۰i۰Z۰۰۳.dat
در نهایت میتوان با استفاده از فرمان زیر که جزیی از مجموعه DSInternals است اقدام به رمزگشایی بانک داده و مشاهده تمامی حسابهای کاربری شامل درهمساز رمزهای عبور NTLM کرد.
• Get-ADDBAccount -All -DBPath 'C:UserssanjeDesktopNTDS tds.dit' -Bootkey [key]
مهاجمان در ادامه قادرند تا با استفاده از این درهمسازها و اجرای آنها توسط برنامههای موسوم به کرک به گذرواژه متن ساده آنها دست پیدا کرده و سپس برای گسترش آلودگی در سطح شبکه از آنها استفاده کنند.
بهرهجویی و سوءاستفاده از Active Directory بهمنظور توزیع بدافزارها و اجرای حملات سایبری موضوعی جدی است که راهبران این سرورها میبایست به آن توجهی خاص داشته باشند.
نشانههای آلودگی (IoC):
هش:
• a۶۷fd۴۵d۴۱۹۴۹۷۴۸۳۰۵۱d۳۳f۳df۴۰۴۹۰
مرجع : مرکز افتا