Azonosították a FritzFrog férget, amely SSH-n keresztül fertőzi meg a szervereket, és decentralizált botnetet épít

Az adatközpontok és felhőrendszerek védelmére szakosodott Guardicore cég, kiderült FritzFrog, egy új csúcstechnológiás kártevő, amely Linux-alapú szervereket támad meg. A FritzFrog a nyílt SSH-porttal rendelkező szerverek elleni bruteforce támadáson keresztül terjedő férget és az összetevőket kombinálja egy decentralizált botnet létrehozásához, amely vezérlő csomópontok nélkül működik, és nincs egyetlen hibapont sem.

A botnet felépítéséhez egy szabadalmaztatott P2P protokollt használnak, amelyben a csomópontok kölcsönhatásba lépnek egymással, koordinálják a támadások szervezését, támogatják a hálózat működését és figyelik egymás állapotát. Új áldozatokat találnak úgy, hogy bruteforce támadást hajtanak végre olyan szervereken, amelyek SSH-n keresztül fogadnak kéréseket. Új szerver észlelésekor a rendszer a bejelentkezési adatok és jelszavak tipikus kombinációit tartalmazó szótárat keres. A vezérlés bármely csomóponton keresztül végrehajtható, ami megnehezíti a botnet-üzemeltetők azonosítását és blokkolását.

A kutatók szerint a botnetnek már körülbelül 500 csomópontja van, köztük több egyetem és egy nagy vasúttársaság szerverei is. Megjegyezték, hogy a támadás fő célpontjai oktatási intézmények, egészségügyi központok, kormányzati szervek, bankok és távközlési cégek hálózatai. A szerver feltörését követően a Monero kriptovaluta bányászatának folyamata megszerveződik rajta. A szóban forgó kártevő tevékenységét 2020 januárja óta nyomon követték.

A FritzFrog különlegessége, hogy minden adatot és végrehajtható kódot csak a memóriában tárol. A lemezen végrehajtott változtatások csak abból állnak, hogy új SSH-kulcsot adnak az authorised_keys fájlhoz, amelyet ezt követően a szerver eléréséhez használnak. A rendszerfájlok nem változnak, ami láthatatlanná teszi a férget az integritást ellenőrző összegekkel ellenőrző rendszerek számára. A memória szótárakat is tárol a brute-forcing jelszavakhoz és a bányászathoz szükséges adatokhoz, amelyeket a csomópontok között a P2P protokoll segítségével szinkronizálnak.

A rosszindulatú összetevőket ifconfig, libexec, php-fpm és nginx folyamatokként álcázzák. A botnet-csomópontok figyelik szomszédaik állapotát, és ha a kiszolgálót újraindítják, vagy akár az operációs rendszert újratelepítik (ha módosított authorised_keys fájl került az új rendszerbe), újra aktiválják a rosszindulatú összetevőket a gazdagépen. A kommunikációhoz szabványos SSH-t használnak - a rosszindulatú program emellett elindít egy helyi „netcat”-et, amely kötődik a localhost interfészhez, és figyeli a forgalmat a 1234-es porton, amelyhez a külső gazdagépek egy SSH-alagúton keresztül férnek hozzá, az Author_keys kulcsa segítségével a csatlakozáshoz.

Azonosították a FritzFrog férget, amely SSH-n keresztül fertőzi meg a szervereket, és decentralizált botnetet épít

A FritzFrog komponens kódja Go-ban van írva, és többszálú módban fut. A rosszindulatú program több modult tartalmaz, amelyek különböző szálakban futnak:

  • Cracker – jelszavakat keres a megtámadott szervereken.
  • CryptoComm + Parser – titkosított P2P kapcsolatot szervez.
  • A CastVotes egy olyan mechanizmus, amellyel közösen választhatják ki a célállomásokat a támadáshoz.
  • TargetFeed – Megkapja a szomszédos csomópontoktól támadandó csomópontok listáját.
  • A DeployMgmt egy olyan féreg megvalósítása, amely rosszindulatú kódot terjeszt egy feltört kiszolgálóra.
  • Saját tulajdonú – felelős a már rosszindulatú kódot futtató szerverekhez való csatlakozásért.
  • Összeállítás – külön átvitt blokkokból összeállít egy fájlt a memóriában.
  • Vírusölő - egy modul a versengő rosszindulatú programok elnyomására, azonosítja és leállítja az „xmr” karakterlánccal rendelkező folyamatokat, amelyek CPU erőforrásokat fogyasztanak.
  • A Libexec egy modul a Monero kriptovaluta bányászatához.

A FritzFrogban használt P2P protokoll körülbelül 30 parancsot támogat, amelyek felelősek a csomópontok közötti adatátvitelért, szkriptek futtatásáért, rosszindulatú programok összetevőinek átviteléért, lekérdezési állapotért, naplók cseréjéért, proxyk indításáért stb. Az információk továbbítása külön titkosított csatornán keresztül történik JSON formátumú szerializálással. A titkosítás aszimmetrikus AES titkosítást és Base64 kódolást használ. A DH protokoll kulcscserére szolgál (DiffieHellman-). Az állapot meghatározásához a csomópontok folyamatosan ping kéréseket cserélnek.

Minden botnet csomópont egy elosztott adatbázist tart fenn a megtámadott és feltört rendszerekkel kapcsolatos információkkal. A támadási célpontok az egész botnetben szinkronban vannak – minden csomópont külön célpontot támad meg, pl. két különböző botnet csomópont nem támadja meg ugyanazt a gazdagépet. A csomópontok helyi statisztikákat is gyűjtenek és továbbítanak a szomszédoknak, például a szabad memória méretét, az üzemidőt, a CPU terhelést és az SSH bejelentkezési tevékenységet. Ez az információ annak eldöntésére szolgál, hogy elindítsuk-e a bányászati ​​folyamatot, vagy csak más rendszerek támadására használjuk a csomópontot (például a bányászat nem indul el betöltött vagy gyakori rendszergazdai kapcsolatokkal rendelkező rendszereken).

A FritzFrog azonosítására a kutatók egy egyszerű módszert javasoltak shell script. A rendszer károsodásának megállapítása
jelek, mint például a figyelő kapcsolat megléte a 1234-es porton, a jelenlét rosszindulatú kulcs az authorizált_kulcsokban (ugyanaz az SSH-kulcs minden csomóponton van telepítve), valamint a futó folyamatok „ifconfig”, „libexec”, „php-fpm” és „nginx” jelenléte a memóriában, amelyekhez nem tartoznak végrehajtható fájlok („/proc/” /exe" egy távoli fájlra mutat). Ennek jele lehet a forgalom jelenléte az 5555-ös hálózati porton is, amely akkor fordul elő, amikor a rosszindulatú programok hozzáférnek a tipikus web.xmrpool.eu készlethez a Monero kriptovaluta bányászata során.

Forrás: opennet.ru

Hozzászólás