⭕️Red Team Note
یکی از تکنیک های مورد استفاده در
initial access و یا حتی در
lateral movement استفاده از ماکرو ها می باشد.
تکنیک مورد بحث در این پست
xlm macro
میباشد که با این تکنیک شما در قسمت فرمول اکسل به جای فرمول
شل کد تزریق میکنید و ادامه ماجرا..
نکته ای که میتونه مهم کنه این تکنیک رو استفاده نشدن از
vba است که قالبا در ماکرو ها ازش استفاده میشه و استفاده اش از ساختار
com و
win api ها قابلیت دور زدن
amsi رو پیدا میکنه که میتونه خیلی برای ما اهمیت داشته باشه.
برای اجرای این تکنیک
insert داخل
sheet استفاده میکنیم
ms excel 4.0 macro
رو انتخاب میکنیم
از اینجا دیگه میتونیم دستوراتمون رو در هر سلول بنویسیم و البته
auto open هم فعال کنیم.
خب حالا از چه روش هایی برای دسترسی میتونیم استفاده کنیم؟
اول اینکه میتونیم دستور
cmd اجرا کنیم و بحث nc و امثالهم
دوم اینکه میتونیم با ابزار هایی مثل
https://github.com/mdsecactivebreach/SharpShooter
https://github.com/Synzack/Excel-4.0-Shellcode-Generator
https://github.com/outflanknl/Excel4-DCOM
شل کدی رو ایجاد کنیم
سوم اینکه میتونیم از تکنیک های
cobalt strike استفاده کنیم
و در اخر بیایم کمی عمیق شیم در دستوراتش
register()
توابع
win api رو فراخوانی میکنه
halt()
اجرای ماکرو رو متوقف میکنه
exec()
یه فایلی رو اجرا میکنه حالا یا اجرایی یا فایل دیگه ای
و..
https://d13ot9o61jdzpp.cloudfront.net/files/Excel%204.0%20Macro%20Functions%20Reference.pdf
که اینجا تمامی توابع هستش.
حالا چجوری استفاده کنیم از این موارد؟
خب در ابتدا با
register
win api هارو
فراخوانی میکنیم
و سورس پیلودمون رو بر مبنی
.net assembly
کامپایل میکنیم و بعد به شل کد تبدیل میکنیم.
این قسمت
null byte های شل کدمون رو حذف میکنیم
و شل کدمون رو تبدیل به
ascii میکنیم که در تابع
char() قرار میگیره
که با فراخوانی توابع ویندوزی در ابتدا ما شل کدمون رو داخل قسمتی از مموری که ذخیره کرده ایم اجرا میکنیم
ناگفته نمونه
https://github.com/FortyNorthSecurity/EXCELntDonut
این ابزار هم خیلی خوبه که ابزار نوشته شده موسسه ای هست که
eyewitness رو نوشتن.
خب بریم سر وقت اینکه چیکارش کنیم؟
چطور جلوگیری بشه ؟
در ابتدا ابزاری برای رفع مبهم سازی ماکرو های این مدل دیدم که به نظر چیز بدرد بخوری میومد
https://github.com/DissectMalware/XLMMacroDeobfuscator
برای جلوگیری ازش هم خب در ورژن های جدید آفیس غیر فعال است
اما باز پالیسی هایی در
admx و یا رجیستری هست
https://4sysops.com/archives/restricting-or-blocking-office-2016-2019-macros-with-group-policy/
https://blog.malwarebytes.com/reports/2022/01/microsoft-is-now-disabling-excel-4-0-macros-by-default/
#redteam #amsi #macro #winapi
@securation