Malvérový komplex Drovorub infikuje OS Linux

Národná bezpečnostná agentúra a Federálny úrad pre vyšetrovanie USA zverejnil správu, podľa ktorého 85. hlavné stredisko špeciálnej služby Hlavné riaditeľstvo generálneho štábu ruských ozbrojených síl (85 GCSS GRU) sa používa malvérový komplex s názvom „Drovorub“. Drovorub obsahuje rootkit vo forme modulu linuxového jadra, nástroj na prenos súborov a presmerovanie sieťových portov a riadiaci server. Klientska časť môže sťahovať a nahrávať súbory, vykonávať ľubovoľné príkazy ako užívateľ root a presmerovať sieťové porty na iné uzly siete.

Riadiace centrum Drovorub dostane cestu ku konfiguračnému súboru vo formáte JSON ako argument príkazového riadka:

{
"db_host" : "",
"db_port" : "",
"db_db" : "",
"db_user" : "",
"db_password" : "",

"lport" : "",
"lhost" : "",
"ping_sec" : "",

"priv_key_file" : "",
"phrase" : ""
}

MySQL DBMS sa používa ako backend. Na pripojenie klientov sa používa protokol WebSocket.

Klient má zabudovanú konfiguráciu vrátane adresy URL servera, jeho verejného kľúča RSA, používateľského mena a hesla. Po nainštalovaní rootkitu sa konfigurácia uloží ako textový súbor vo formáte JSON, ktorý je pred systémom skrytý modulom jadra Drovoruba:

{
«id» : «cbcf6abc-466b-11e9-853b-000c29cb9f6f»,
"key": "Y2xpZW50a2V5"
}

Tu je „id“ jedinečný identifikátor vydaný serverom, v ktorom posledných 48 bitov zodpovedá MAC adrese sieťového rozhrania servera. Predvolený parameter „key“ je reťazec „clientkey“ zakódovaný v base64, ktorý server používa počas úvodného nadviazania spojenia. Okrem toho môže konfiguračný súbor obsahovať informácie o skrytých súboroch, moduloch a sieťových portoch:

{
«id» : «6fa41616-aff1-11ea-acd5-000c29283bbc»,
"key": "Y2xpZW50a2V5",
"monitor" : {
"súbor" : [
{
"aktívny" : "pravda"
«id» : «d9dc492b-5a32-8e5f-0724-845aa13fff98»,
"mask" : "testfile1"
}
],
"modul" : [
{
"aktívny" : "pravda"
«id» : «48a5e9d0-74c7-cc17-2966-0ea17a1d997a»,
"mask" : "testmodule1"
}
],
"net" : [
{
"aktívny" : "pravda"
«id» : «4f355d5d-9753-76c7-161e-7ef051654a2b»,
"port" : "12345",
"protokol" : "tcp"
}
]}
}

Ďalšou súčasťou Drovorubu je agent, jeho konfiguračný súbor obsahuje informácie pre pripojenie k serveru:

{
"client_login" : "user123",
"client_pass" : "pass4567",
"clientid" : "e391847c-bae7-11ea-b4bc-000c29130b71",
«clientkey_base64» : «Y2xpZW50a2V5»,
"pub_key_file" :"public_key",
"hostiteľ_servera" : "192.168.57.100",
"port_serveru" : "45122",
"server_uri" :"/ws"
}

Polia „clientid“ a „clientkey_base64“ pôvodne chýbajú, pridávajú sa po úvodnej registrácii na serveri.

Po inštalácii sa vykonajú nasledujúce operácie:

  • načíta sa modul jadra, ktorý registruje háky pre systémové volania;
  • klient sa zaregistruje pomocou modulu jadra;
  • Modul jadra skrýva spustený klientsky proces a jeho spustiteľný súbor na disku.

Na komunikáciu medzi klientom a modulom jadra sa používa pseudozariadenie, napríklad /dev/zero. Modul jadra analyzuje všetky dáta zapísané do zariadenia a pre prenos opačným smerom odošle signál SIGUSR1 klientovi, po ktorom načíta dáta z toho istého zariadenia.

Na detekciu Lumberjacka môžete použiť analýzu sieťovej prevádzky pomocou NIDS (škodlivú sieťovú aktivitu v samotnom infikovanom systéme nie je možné zistiť, pretože modul jadra skrýva sieťové zásuvky, ktoré používa, pravidlá sieťového filtra a pakety, ktoré by mohli zachytiť surové zásuvky) . V systéme, kde je nainštalovaný Drovorub, môžete zistiť modul jadra odoslaním príkazu na skrytie súboru:

dotykový testovací súbor
echo “ASDFZXCV:hf:testfile” > /dev/zero
ls

Vytvorený súbor „testfile“ sa stane neviditeľným.

Ďalšie metódy detekcie zahŕňajú analýzu obsahu pamäte a disku. Aby ste predišli infekcii, odporúča sa použiť povinné overenie podpisu jadra a modulov, ktoré je dostupné od jadra Linuxu od verzie 3.7.

Správa obsahuje pravidlá Snort na zisťovanie sieťovej aktivity Drovorub a pravidlá Yara na zisťovanie jej komponentov.

Pripomeňme, že 85. GTSSS GRU (vojenská jednotka 26165) je spojená so skupinou APT28 (Fancy Bear), zodpovedný za množstvo kybernetických útokov.

Zdroj: opennet.ru