S'ha detectat un cuc FritzFrog, infectant servidors mitjançant SSH i construint una botnet descentralitzada

Empresa Guardicore, especialitzada en la protecció de centres de dades i sistemes al núvol, revelat FritzFrog, un nou programari maliciós d'alta tecnologia que ataca servidors basats en Linux. FritzFrog combina un cuc que es propaga mitjançant un atac de força bruta als servidors amb un port SSH obert i components per construir una botnet descentralitzada que funciona sense nodes de control i no té un únic punt de fallada.

Per construir una botnet, s'utilitza un protocol P2P propietari, en el qual els nodes interactuen entre ells, coordinen l'organització dels atacs, donen suport al funcionament de la xarxa i controlen l'estat dels altres. Es troben noves víctimes realitzant un atac de força bruta a servidors que accepten sol·licituds mitjançant SSH. Quan es detecta un nou servidor, es cerca un diccionari de combinacions típiques d'inicis de sessió i contrasenyes. El control es pot dur a terme a través de qualsevol node, cosa que dificulta identificar i bloquejar els operadors de botnets.

Segons els investigadors, la botnet ja té uns 500 nodes, inclosos els servidors de diverses universitats i una gran empresa ferroviària. Cal assenyalar que els principals objectius de l'atac són xarxes d'institucions educatives, centres mèdics, agències governamentals, bancs i empreses de telecomunicacions. Després que el servidor estigui compromès, s'organitza el procés d'extracció de la criptomoneda Monero. L'activitat del programari maliciós en qüestió s'ha rastrejat des del gener de 2020.

L'especial del FritzFrog és que només conserva totes les dades i el codi executable a la memòria. Els canvis al disc consisteixen només en afegir una nova clau SSH al fitxer authorized_keys, que s'utilitza posteriorment per accedir al servidor. Els fitxers del sistema no es modifiquen, cosa que fa que el cuc sigui invisible per als sistemes que comproven la integritat mitjançant sumes de control. La memòria també emmagatzema diccionaris de contrasenyes de forçament brut i dades per a la mineria, que es sincronitzen entre nodes mitjançant el protocol P2P.

Els components maliciosos es camuflen com a processos ifconfig, libexec, php-fpm i nginx. Els nodes de botnet controlen l'estat dels seus veïns i, si el servidor es reinicia o fins i tot es reinstal·la el sistema operatiu (si es va transferir un fitxer authorized_keys modificat al nou sistema), tornen a activar components maliciosos a l'amfitrió. Per a la comunicació, s'utilitza SSH estàndard: el programari maliciós també llança un "netcat" local que s'uneix a la interfície localhost i escolta el trànsit al port 1234, al qual accedeixen els hosts externs a través d'un túnel SSH, utilitzant una clau de authorized_keys per connectar-se.

S'ha detectat un cuc FritzFrog, infectant servidors mitjançant SSH i construint una botnet descentralitzada

El codi del component FritzFrog està escrit a Go i s'executa en mode multifils. El programari maliciós inclou diversos mòduls que s'executen en diferents fils:

  • Cracker: cerca contrasenyes als servidors atacats.
  • CryptoComm + Parser: organitza una connexió P2P xifrada.
  • CastVotes és un mecanisme per seleccionar conjuntament amfitrions objectiu per atacar.
  • TargetFeed: rep una llista de nodes per atacar dels nodes veïns.
  • DeployMgmt és una implementació d'un cuc que distribueix codi maliciós a un servidor compromès.
  • De propietat: responsable de connectar-se a servidors que ja estan executant codi maliciós.
  • Muntar: reuneix un fitxer a la memòria a partir de blocs transferits per separat.
  • Antivir: un mòdul per suprimir programari maliciós competidor, identifica i finalitza els processos amb la cadena "xmr" que consumeixen recursos de la CPU.
  • Libexec és un mòdul per explotar la criptomoneda Monero.

El protocol P2P utilitzat a FritzFrog admet unes 30 ordres responsables de transferir dades entre nodes, executar scripts, transferir components de programari maliciós, consultar l'estat, intercanviar registres, llançar servidors intermediaris, etc. La informació es transmet per un canal xifrat independent amb serialització en format JSON. El xifratge utilitza xifratge AES asimètric i codificació Base64. El protocol DH s'utilitza per a l'intercanvi de claus (Diffie-hellman). Per determinar l'estat, els nodes intercanvien constantment peticions de ping.

Tots els nodes de botnet mantenen una base de dades distribuïda amb informació sobre sistemes atacats i compromesos. Els objectius d'atac es sincronitzen a tota la xarxa de bots; cada node ataca un objectiu independent, és a dir. dos nodes de botnet diferents no atacaran el mateix host. Els nodes també recullen i transmeten estadístiques locals als veïns, com ara la mida de la memòria lliure, el temps de funcionament, la càrrega de la CPU i l'activitat d'inici de sessió SSH. Aquesta informació s'utilitza per decidir si s'inicia el procés de mineria o si s'utilitza el node només per atacar altres sistemes (per exemple, la mineria no s'inicia en sistemes carregats o amb connexions freqüents d'administrador).

Per identificar FritzFrog, els investigadors han proposat un senzill script de shell. Per determinar el dany del sistema
signes com ara la presència d'una connexió d'escolta al port 1234, la presència clau maliciosa en authorized_keys (la mateixa clau SSH està instal·lada a tots els nodes) i la presència a la memòria de processos en execució “ifconfig”, “libexec”, “php-fpm” i “nginx” que no tenen fitxers executables associats (“/proc/ /exe" apunta a un fitxer remot). Un signe també pot ser la presència de trànsit al port de xarxa 5555, que es produeix quan el programari maliciós accedeix al conjunt típic web.xmrpool.eu durant la mineria de la criptomoneda Monero.

Font: opennet.ru

Afegeix comentari