Drovorub malware kompleks besmet Linux OS

Nasionale Veiligheidsagentskap en die Amerikaanse Federale Buro vir Ondersoek 'n verslag gepubliseer, waarvolgens die 85ste hoofsentrum van spesiale diens Hoofdirektoraat van die Algemene Personeel van die Gewapende Magte van die Russiese Federasie (85 GTSSS GRU) gebruik 'n kompleks van kwaadwillige sagteware genaamd "Drovorub". Houtkapper bevat 'n wortelstel in die vorm van 'n Linux-kernmodule, 'n hulpmiddel vir die oordrag van lêers en herleiding van netwerkpoorte, en 'n beheerbediener. Die kliëntkant kan lêers aflaai en oplaai, arbitrêre opdragte as die wortelgebruiker uitvoer en netwerkpoorte na ander netwerknodes aanstuur.

Die Houtkapper-beheersentrum ontvang die pad na die konfigurasielêer in JSON-formaat as 'n opdragreëlargument:

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

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

"priv_key_file" : " ",
"frase" : " »
}

MySQL DBMS word as 'n backend gebruik. Die WebSocket-protokol word gebruik om kliënte te verbind.

Die kliënt het ingeboude konfigurasie, insluitend die bediener se URL, sy RSA publieke sleutel, gebruikersnaam en wagwoord. Nadat die rootkit geïnstalleer is, word die konfigurasie gestoor as 'n tekslêer in JSON-formaat, wat van die stelsel versteek word deur die Woodcutter-kernmodule:

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

Hier is "id" 'n unieke identifiseerder wat deur die bediener uitgereik word, waarin die laaste 48 bisse ooreenstem met die MAC-adres van die bediener se netwerkkoppelvlak. Die verstek "sleutel" parameter is die base64 geënkodeerde "kliëntsleutel" string wat deur die bediener gebruik word tydens die aanvanklike handdruk. Daarbenewens kan die konfigurasielêer inligting oor versteekte lêers, modules en netwerkpoorte bevat:

{
«id» : «6fa41616-aff1-11ea-acd5-000c29283bbc»,
"key": "Y2xpZW50a2V5",
"monitor" : {
"lêer" : [
{
"active" : "waar",
«id» : «d9dc492b-5a32-8e5f-0724-845aa13fff98»,
"masker" : "toetslêer1"
}
],
"module" : [
{
"active" : "waar",
«id» : «48a5e9d0-74c7-cc17-2966-0ea17a1d997a»,
"masker" : "toetsmodule1"
}
],
"net" : [
{
"active" : "waar",
«id» : «4f355d5d-9753-76c7-161e-7ef051654a2b»,
"poort" : "12345",
"protokol" : "tcp"
}
] }
}

Nog 'n komponent van Woodcutter is 'n agent, sy konfigurasielêer bevat inligting om aan die bediener te koppel:

{
"client_login" : "gebruiker123",
"client_pass" : "pass4567",
"clientid" : "e391847c-bae7-11ea-b4bc-000c29130b71",
«clientkey_base64» : «Y2xpZW50a2V5»,
"pub_key_file" :"publieke_sleutel",
"bediener_gasheer" : "192.168.57.100",
"bediener_poort" :"45122",
"bediener_uri" :"/ws"
}

Die "clientid" en "clientkey_base64" velde is aanvanklik afwesig, hulle word bygevoeg na die aanvanklike registrasie op die bediener.

Na die installasie word die volgende bewerkings uitgevoer:

  • 'n kernmodule word gelaai wat hakies vir stelseloproepe registreer;
  • die kliënt registreer by die kernmodule;
  • die kernmodule verberg die lopende kliëntproses en sy uitvoerbare op skyf.

'n Pseudo-toestel, soos /dev/zero, word gebruik om met die kliënt met die kernmodule te kommunikeer. Die kernmodule ontleed alle data wat na die toestel geskryf is, en stuur 'n SIGUSR1-sein na die kliënt vir transmissie in die teenoorgestelde rigting, waarna dit data vanaf dieselfde toestel lees.

Om Houtkapper op te spoor, kan jy netwerkverkeeranalise gebruik met behulp van NIDS (kwaadwillige netwerkaktiwiteit in die besmette stelsel self kan nie opgespoor word nie, aangesien die kernmodule die netwerkvokkies wat dit gebruik, netfilterreëls en pakkies wat deur rou voetstukke onderskep kan word, versteek). Op 'n stelsel waar Woodcutter geïnstalleer is, kan jy 'n kernmodule opspoor deur dit 'n opdrag te stuur om 'n lêer te versteek:

raak toetslêer
eggo "ASDFZXCV:hf:toetslêer" > /dev/zero
ls

Die geskepte lêer "toetslêer" word onsigbaar.

Ander opsporingsmetodes sluit in geheue- en skyf-inhoudanalise. Om infeksie te voorkom, word dit aanbeveel om verpligte verifikasie van die kern- en module-handtekeninge te gebruik, beskikbaar vanaf die Linux-kern weergawe 3.7.

Die verslag bevat Snort-reëls vir die opsporing van Houtkapper-netwerkaktiwiteit en Yara-reëls vir die opsporing van sy komponente.

Onthou dat 85 GTSSS GRU (militêre eenheid 26165) met die groep geassosieer word APT28 (Fancy Bear)verantwoordelik vir talle kuberaanvalle.

Bron: opennet.ru