Národní bezpečnostní agentura a americký Federální úřad pro vyšetřování
Řídicí centrum Drovorub obdrží cestu ke konfiguračnímu souboru ve formátu JSON jako argument příkazového řádku:
{
"db_host" : " ",
"db_port" : " ",
"db_db": " ",
"db_user" : " ",
"db_password" : " ",
"lport": " ",
"lhost": " ",
"ping_sec" : " ",
"priv_key_file" : " ",
"fráze" : " »
}
Jako backend se používá MySQL DBMS. Pro připojení klientů se používá protokol WebSocket.
Klient má vestavěnou konfiguraci, včetně adresy URL serveru, jeho veřejného klíče RSA, uživatelského jména a hesla. Po instalaci rootkitu se konfigurace uloží jako textový soubor ve formátu JSON, který je před systémem skrytý modulem jádra Drovoruba:
{
«id» : «cbcf6abc-466b-11e9-853b-000c29cb9f6f»,
"klíč": "Y2xpZW50a2V5"
}
Zde "id" je jedinečný identifikátor vydaný serverem, ve kterém posledních 48 bitů odpovídá MAC adrese síťového rozhraní serveru. Výchozí parametr „key“ je řetězec „clientkey“ zakódovaný v base64, který server používá během počátečního handshake. Kromě toho může konfigurační soubor obsahovat informace o skrytých souborech, modulech a síťových portech:
{
«id» : «6fa41616-aff1-11ea-acd5-000c29283bbc»,
"klíč": "Y2xpZW50a2V5",
"monitor" : {
"soubor" : [
{
"aktivní" : "pravda"
«id» : «d9dc492b-5a32-8e5f-0724-845aa13fff98»,
"mask" : "testfile1"
}
],
"modul" : [
{
"aktivní" : "pravda"
«id» : «48a5e9d0-74c7-cc17-2966-0ea17a1d997a»,
"mask" : "testmodule1"
}
],
"síť" : [
{
"aktivní" : "pravda"
«id» : «4f355d5d-9753-76c7-161e-7ef051654a2b»,
"port" : "12345",
"protokol": "tcp"
}
]}
}
Další součástí Drovorubu je agent, jehož konfigurační soubor obsahuje informace pro připojení k serveru:
{
"client_login" : "user123",
"client_pass" : "pass4567",
"clientid" : "e391847c-bae7-11ea-b4bc-000c29130b71",
«clientkey_base64» : «Y2xpZW50a2V5»,
"pub_key_file" :"public_key",
"hostitel_serveru" : "192.168.57.100",
"port_serveru" :"45122",
"server_uri" :"/ws"
}
Pole „clientid“ a „clientkey_base64“ zpočátku chybí, jsou přidány po počáteční registraci na serveru.
Po instalaci se provádějí následující operace:
- je načten modul jádra, který registruje háky pro systémová volání;
- klient se zaregistruje pomocí modulu jádra;
- Modul jádra skrývá běžící klientský proces a jeho spustitelný soubor na disku.
Ke komunikaci mezi klientem a modulem jádra se používá pseudozařízení, například /dev/zero. Modul jádra analyzuje všechna data zapsaná do zařízení a pro přenos v opačném směru odešle signál SIGUSR1 klientovi, načež načte data ze stejného zařízení.
K detekci Lumberjacka můžete použít analýzu síťového provozu pomocí NIDS (škodlivá síťová aktivita v infikovaném systému nemůže být detekována, protože modul jádra skrývá síťové zásuvky, které používá, pravidla netfilter a pakety, které by mohly být zachyceny raw sockety) . V systému, kde je nainstalován Drovorub, můžete zjistit modul jádra odesláním příkazu ke skrytí souboru:
dotkněte se testovacího souboru
echo “ASDFZXCV:hf:testfile” > /dev/zero
ls
Vytvořený soubor „testfile“ se stane neviditelným.
Mezi další metody detekce patří analýza obsahu paměti a disku. Aby se zabránilo infekci, doporučuje se používat povinné ověření podpisu jádra a modulů, které je k dispozici od jádra Linuxu verze 3.7.
Zpráva obsahuje pravidla Snort pro detekci síťové aktivity Drovorub a Yara pravidla pro detekci jejích součástí.
Připomeňme, že 85. GTSSS GRU (vojenská jednotka 26165) je spojena se skupinou
Zdroj: opennet.ru