Зловреден софтуер VOID#GEIST
Изследователи по киберсигурност са разкрили сложна многоетапна кампания със зловреден софтуер, която разчита на пакетни скриптове, за да доставя криптирани полезни товари от троянски кон за отдалечен достъп (RAT). Кампанията, идентифицирана като VOID#GEIST, използва няколко семейства RAT, включително XWorm, AsyncRAT и Xeno RAT.
Веригата за атака използва обфускиран пакетен скрипт, който инициира поредица от действия, предназначени да избегнат откриването. Тези действия включват стартиране на допълнителен пакетен скрипт, имплементиране на легитимна вградена среда за изпълнение на Python и декриптиране на криптирани полезни товари от шелкод. Шелкодът се изпълнява директно в паметта, след като е инжектиран в отделни екземпляри на процеса explorer.exe на Windows, използвайки техника, известна като инжектиране на Early Bird Asynchronous Procedure Call (APC).
Съдържание
Доставка на зловреден софтуер, управлявана от скриптове: Модерен модел на заплаха
Съвременните злонамерени лица все по-често изоставят традиционния самостоятелен изпълним зловреден софтуер в полза на многопластови, базирани на скриптове рамки за доставяне, които имитират легитимно потребителско поведение. Вместо да внедряват конвенционални преносими изпълними (PE) двоични файлове, нападателите организират многокомпонентни канали, които комбинират няколко легитимни технологии и скриптови среди.
Типичните компоненти, използвани в тези рамки, включват:
- Пакетни скриптове, използвани за оркестриране на последователността на заразяване.
- PowerShell команди, които улесняват скритото поставяне на полезен товар.
- Вградени легитимни среди за изпълнение, които осигуряват преносимост между системите.
- Суров шелкод, изпълняван директно в паметта, за да се поддържа постоянство и контрол.
Този подход за безфайлово изпълнение значително намалява възможностите за откриване на базата на диск. Всеки отделен етап изглежда относително безобиден, когато се разглежда самостоятелно, и често наподобява рутинна административна дейност, което позволява на злонамерените лица да действат в компрометирана среда, без да генерират незабавни предупреждения за сигурността.
Първоначален достъп чрез фишинг и Cloudflare инфраструктура
Входната точка на атаката започва със злонамерен пакетен скрипт, доставен чрез фишинг имейли. Скриптът се извлича от инфраструктура, хоствана на домейн TryCloudflare. След като бъде изпълнен, скриптът умишлено избягва опитите за ескалация на привилегиите и вместо това работи строго в рамките на разрешенията на текущо влезлия потребител.
Тази стратегия позволява на зловредния софтуер да установи първоначалната си позиция, докато се слива с рутинните операции на потребителско ниво. Като избягва действия, изискващи повишени привилегии, атаката намалява вероятността от задействане на предупреждения за сигурност или администраторски подкани.
Техники за визуално разсейване и скрито изпълнение
След изпълнението си, първият етап от зловредния софтуер стартира документ-примамка, за да разсее жертвата. Google Chrome се отваря в режим на цял екран, за да покаже финансов документ или фактура, представени като PDF файл. Докато потребителят е фокусиран върху документа, злонамерената дейност продължава във фонов режим.
Едновременно с това се изпълнява PowerShell команда за рестартиране на оригиналния пакетен скрипт със скрити параметри за изпълнение. Използването на параметъра -WindowStyle Hidden предотвратява появата на видим конзолен прозорец, като по този начин се гарантира, че злонамерената дейност остава скрита от потребителя.
Устойчивост чрез изпълнение на стартиране на потребителско ниво
За да се запази устойчивостта на зловредния софтуер след рестартиране на системата, той инсталира спомагателен пакетен скрипт в директорията за стартиране на потребителя на Windows. Това местоположение гарантира, че скриптът се изпълнява автоматично всеки път, когато жертвата влезе в системата.
Този механизъм за постоянство е умишлено фин. Вместо да използва по-натрапчиви техники, като например промяна на ключове в системния регистър, създаване на планирани задачи или инсталиране на услуги, зловредният софтуер разчита изключително на стандартното поведение при стартиране на потребителско ниво. Тъй като подходът работи изцяло в контекста на привилегиите на текущия потребител, той избягва задействането на подкани за ескалация на привилегиите и намалява вероятността от откриване от инструменти за наблюдение на системния регистър.
Рамка за извличане и декриптиране на полезен товар
По време на следващия етап от веригата на заразяване, зловредният софтуер се свързва с домейн на TryCloudflare, за да извлече допълнителни компоненти на полезния товар, опаковани в ZIP архиви. Тези архиви съдържат модулите, необходими за декриптиране и изпълнение на крайните полезни товари на зловредния софтуер.
Изтегленият архив обикновено съдържа следните компоненти:
- runn.py – Python-базиран зареждащ механизъм, отговорен за декриптиране и инжектиране на криптирани шелкод модули в паметта
- new.bin – криптиран полезен товар от шелкод, свързан с XWorm
- xn.bin – криптиран полезен товар от шелкод, съответстващ на Xeno RAT
- pul.bin – криптиран полезен товар от шелкод, съответстващ на AsyncRAT
- a.json, n.json и p.json – ключови файлове, използвани от зареждащата програма на Python за динамично декриптиране на полезните товари на шелкод по време на изпълнение
Този модулен дизайн позволява на нападателите да разполагат с различни полезни товари независимо и да ги активират само когато е необходимо.
Вградена Python Runtime среда за преносимост и скритост
След като архивът бъде разархивиран, зловредният софтуер внедрява легитимна вградена среда за изпълнение на Python, получена директно от python.org. Вграждането на легитимен интерпретатор елиминира зависимостта от каквато и да е инсталация на Python, която може вече да съществува на компрометираната система.
От гледна точка на нападателя, тази стъпка предоставя няколко стратегически предимства. Зловредният софтуер се превръща в самостоятелна среда за изпълнение, способна да декриптира и инжектира полезни товари, без да изисква външни зависимости. Това подобрява преносимостта между различни системи, повишава надеждността и допринася за оперативната скритост чрез използване на легитимни софтуерни компоненти.
Изпълнение в паметта на множество RAT полезни товари
Вградената среда за изпълнение на Python се използва за изпълнение на скрипта за зареждане runn.py. Зареждащият код декриптира шелкода, свързан с XWorm, и го инжектира в работещ екземпляр на explorer.exe, използвайки Early Bird APC инжекция.
За да внедри Xeno RAT, зловредният софтуер използва легитимен двоичен файл на Microsoft, наречен AppInstallerPythonRedirector.exe, който се използва за извикване на Python и изпълнение на необходимите компоненти. Същата техника на инжектиране впоследствие се използва повторно за внедряване на AsyncRAT, като се гарантира, че всички полезни товари се изпълняват изцяло в паметта, без да се оставят традиционни изпълними артефакти на диска.
Командно-контролно маячене и модулна архитектура
Последният етап от атаката включва изпращане на минимален HTTP маяк до контролираната от атакуващия инфраструктура за командване и контрол (C2), хоствана на TryCloudflare. Този маяк потвърждава, че системата е успешно компрометирана и е готова да получава допълнителни инструкции.
Въпреки че специфичните цели на кампанията остават неизвестни, веригата на заразяване демонстрира силно модулна архитектура. Вместо да внедряват един голям зловреден пакет, атакуващите внедряват компоненти постепенно на няколко етапа. Този дизайн подобрява оперативната гъвкавост и устойчивост.
От гледна точка на откриването, по време на кампанията се очертава един забележителен поведенчески индикатор: многократно инжектиране на процеси в explorer.exe в кратки интервали от време. Този модел може да послужи като силен сигнал за защитниците, които се опитват да съпоставят подозрителна активност в различните етапи от жизнения цикъл на атаката.