Севернокорейски автори на заплахи използват фалшиви тестове за работа с Terraform, за да компрометират разработчици на macOS и да получат достъп до облачни системи. Кампанията показва как една рутинна задача по кодиране може да се превърне във входна точка за кражба на данни, отдалечен контрол и по-дълбоко проникване в мрежата.

Дейността е свързана с TraderTraitor, финансово мотивирана подгрупа на Lazarus, проследявана също като UNC4899, PUKCHONG и Jade Sleet.

Тя следва голям инцидент, свързан с LayerZero, като изследователите са открили и несвързан индийски доставчик на ИТ услуги, засегнат от задните врати (backdoors).

SentinelLABS съобщи в доклад, споделен с Cyber Security News (CSN), че атакуващите са разширили фокуса си отвъд компаниите за криптовалута.

Констатацията показва, че севернокорейските оператори преследват разработчици, облачни администратори и хора, които притежават ценен технически достъп.

Рискът не се ограничава до един работодател или отрасъл. Лаптопът на даден разработчик може да съдържа облачни идентификационни данни, достъп до изходен код, разрешения за внедряване и ключове за интерфейси за приложно програмиране (API), което го прави високоценен мост към корпоративната инфраструктура.

Подобни капани, водени от уж подбиращи персонал лица, се появиха в неотдавнашни кампании за интервюта на Lazarus, където доверието в предполагаем процес по наемане се превръща в първоначалната слабост.

Севернокорейски TraderTraitor хакери използват фалшиви Terraform тестове за работа

TraderTraitor подхожда към търсещите работа със задачи за интервю, фокусирани върху инфраструктурата, поместени в репозитории на GitHub. Публичните профили на мишените обикновено показват опит в DevOps, криптовалути или финансови технологии, което позволява на операторите да адаптират проекти, които изглеждат подходящи за техните професионални умения.

Изследователите идентифицираха репозитории, използващи имена като Northwind-IAC, novacart-interview и terraform-candidate-repo.

Всяка примамка съдържа манипулиран файл .terraform.lock.hcl, който насочва Terraform към контролиран от атакуващия регистър на доставчици (provider registry) вместо към легитимен източник. Стартирането на terraform init след това изтегля и изпълнява злонамерени модули на доставчици.

Задача за интервю от GitHub репозиторий, съдържаща файл .terraform.lock.hcl с превърнат в оръжие код (Източник - SentinelLABS)
Задача за интервю от GitHub репозиторий, съдържаща файл .terraform.lock.hcl с превърнат в оръжие код (Източник – SentinelLABS)

Тактиката е особено ефективна, тъй като съответните заключващи файлове (lock files) изглеждат като обикновени метаданни на проекта. Един кандидат е забелязал подозрителен подобен доставчик и го е премахнал, което подсказва, че внимателният преглед може да спре инфекцията, преди кодът да бъде стартиран.

Тази загриженост отразява злонамерените атаки срещу Terraform регистри, които демонстрираха опасността от компрометирани инфраструктурни пакети. Операторите са използвали този достъп, за да инсталират задни врати FLATROOF и ROOFDECK на macOS.

При по-ранното проникване в LayerZero инструментите са помогнали за събирането на API ключове и са подпомогнали ескалацията на привилегии в среди на Amazon Web Services и Google Cloud Platform. Поради това кампанията е насочена както към крайната точка, така и към облачния достъп, свързан с нея.

macOS имплантите разширяват контрола

При засегнатия индийски доставчик на ИТ услуги атакуващите са компрометирали Apple Silicon MacBook, използван от DevOps инженер. Машината рутинно е управлявала ресурси в AWS, OVH и OpenStack, като е съдържала облачни идентификационни данни и достъп до управлението на изходния код. Телеметрията показва и двата импланта на диска до 18 март, преди активността да започне на 29 март.

FLATROOF е бил маскиран като SystemUpdate и е бил проектиран за първоначално събиране на данни и последваща доставка. Той може да изпълнява shell команди, да качва файлове чрез Telegram, да събира данни от браузъри и историята на терминала, да изброява инсталираните приложения, да записва работещите процеси, да профилира системата и да копира ключодържателя за влизане (login keychain).

Поведението му съответства на разследването на Rust macOS задната врата, което документира способността му за кражба на данни. ROOFDECK, маскиран като iSync, предлага по-широк контрол.

Файл .terraform.lock.hcl с превърнат в оръжие код (Източник - SentinelLABS)
Файл .terraform.lock.hcl с превърнат в оръжие код (Източник – SentinelLABS)

Той може да търси ценни файлове, да изпълнява команди, да създава криптирани архиви, да прехвърля данни, да чете клипборда и да установява устойчивост (persistence) чрез LaunchAgent. Освен това той открива сървърите за управление чрез децентрализираната мрежа Nostr, превръщайки комуникациите си в по-гъвкави за операторите.

По-късно атакуващите са внедрили изчистен вариант на ROOFDECK, наречен loginwindow, премахнали са по-ранните импланти и са продължили изпращането на сигнали (beaconing) до 1 юни.

Тази промяна подсказва, че групата може да обновява инструментите си по време на проникването и да намалява следите, оставени върху устройството на жертвата. Това отразява и упоритостта, наблюдавана при разпространението на зловреден софтуер чрез севернокорейски Git куки (Git hooks) – друга кампания, насочена към разработчици.

Организациите трябва да третират служителите с привилегии за облака и за управление на изходния код като чувствителна група за наблюдение. Екипите по сигурността трябва да разследват неподписани програми, стартирани от домашни директории, необичайни дъщерни процеси от инструменти за разработка, неочакван криптиран изходящ трафик и непоискани репозитории за интервюта.

Разработчиците трябва да избягват отварянето на външни задачи за оценяване на корпоративни работни станции и да проверяват всеки доставчик във файла за заключване на Terraform (Terraform lock file), преди да го стартират.

Имената на доставчици, които не използват познатото пространство от имена registry.terraform.io, заслужават незабавна проверка, докато дори пакети от официални регистри трябва да бъдат проследени до техния изходен код и доверен издател.

Индикатори за компрометиране (IoCs):-

ТипИндикаторОписание
SHA-102df07a173ab03b82a4fb6a08973fff8b1467f28FLATROOF, дегизиран като SystemUpdate
SHA-1c491d477dbe0ae04e9aed9dbe237144c03f73ec4ROOFDECK, дегизиран като iSync
SHA-15728b11d30586bbfc1d8bd12df1c722a06e767a2Оголен ROOFDECK, дегизиран като loginwindow
Домейнtechnicais.sytes[.]netFLATROOF сървър за командване и контрол
Домейнstorage.hubpage[.]cloudROOFDECK сървър за командване и контрол
Домейнgrenight[.]comROOFDECK сървър за командване и контрол
IP адрес176.97.114[.]232FLATROOF C2, свързан с technicais.sytes[.]net
IP адрес45.11.59[.]140ROOFDECK C2, свързан с storage.hubpage[.]cloud
IP адрес85.137.56[.]245ROOFDECK C2, свързан с grenight[.]com
IP адрес85.137.56[.]10ROOFDECK междинен сървър (staging server)
Път до файл~/Library/com.apple.iTunesCloud/SystemUpdateПът до двоичния файл на FLATROOF
Път до файл~/Library/com.apple.internal.ck/iSyncПът до двоичния файл на ROOFDECK
Път до файл~/Library/com.apple.appleaccountd/loginwindowПът до оголения двоичен файл на ROOFDECK
Файл/private/tmp/.pipe-airwayТръба за междупроцесна комуникация (IPC pipe) на ROOFDECK
Файл$TMPDIR/tmp*.lockЗаключващ файл (lock file) на FLATROOF
Работна среда~/DevOps-Automation/cloudshieldПът до злонамерената работна среда
TLS сертификат SHA-2564b2d3e8ccce8920a6d01e7d02b84236545a20e5f754b3eec253f8b416b731daaПерсонализиран сертификат, използван за TLS комуникация
TLS сертификат SHA-14ad92bf92ee614b05c340ce17bef7b6ef5a25e82Персонализиран сертификат, използван за TLS комуникация
Сериен номер на TLS сертификат1cd6d13ff15adbf7a42025d10ec99b4aСериен номер на персонализирания сертификат
Субект/издател на TLS сертификатO=mkcert development CA, OU=ub@ub-Standard-PC-Q35-ICH9-2009, CN=mkcert ub@ub-Standard-PC-Q35-ICH9-2009Метаданни за самоподписан TLS сертификат на ROOFDECK
Устойчивост (Persistence)~/Library/LaunchAgents/*.plistЕтикетът започва с com., ProgramArguments включва --type=renderer, и RunAtLoad=true
Конфигурационен файл$HOME/.config/.repl_historyКонфигурационен файл на ROOFDECK
HTTPS крайна точка/app_versionКрайна точка за възлагане на задачи на ROOFDECK, с хост, разрешаван по време на изпълнение
Домейн185-66-91-112.cprapid[.]comДомейн, свързан с потребителя на сертификата ub
Домейн213-111-146-132.cprapid[.]comДомейн, свързан с потребителя на сертификата ub
Домейнanesthesiaschool[.]comДомейн, свързан с потребителя на сертификата ub
Домейнapp.heyhay[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнdela.servehttp[.]comДомейн, свързан с потребителя на сертификата ub
Домейнgalaxy-royal[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнgame.galaxy-royal[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнheyhay[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнmactroubleshoots[.]proДомейн, свързан с потребителя на сертификата ub
Домейнmx01.galaxy-royal[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнns4.galaxy-royal[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнtinklify[.]comДомейн, свързан с потребителя на сертификата ub
Домейнupdate.heyhay[.]onlineДомейн, свързан с потребителя на сертификата ub
Домейнvaimage[.]comДомейн, свързан с потребителя на сертификата ub
Домейнwss.sytes[.]netДомейн, свързан с потребителя на сертификата ub
Домейнwww.anesthesiaschool[.]comДомейн, свързан с потребителя на сертификата ub

Забележка: IP адресите и домейните са нарочно обезвредени (напр. [.]), за да се предотврати случайно разрешаване или създаване на хипервръзки. Възстановете ги само в рамките на контролирани платформи за разузнаване на заплахи като MISP, VirusTotal или вашата SIEM система.