Guardicore-yritys, joka on erikoistunut datakeskusten ja pilvijärjestelmien suojaamiseen,
Bottiverkon rakentamiseen käytetään omaa P2P-protokollaa, jossa solmut ovat vuorovaikutuksessa keskenään, koordinoivat hyökkäysten järjestämistä, tukevat verkon toimintaa ja valvovat toistensa tilaa. Uusia uhreja löydetään suorittamalla bruteforce-hyökkäys palvelimille, jotka hyväksyvät pyynnöt SSH:n kautta. Kun uusi palvelin havaitaan, etsitään tyypillisten kirjautumistunnusten ja salasanojen yhdistelmien sanakirjasta. Ohjaus voidaan suorittaa minkä tahansa solmun kautta, mikä vaikeuttaa botnet-operaattoreiden tunnistamista ja estämistä.
Tutkijoiden mukaan bottiverkossa on jo noin 500 solmua, mukaan lukien useiden yliopistojen ja suuren rautatieyhtiön palvelimet. Hyökkäyksen pääkohteet ovat oppilaitosten, terveyskeskusten, valtion virastojen, pankkien ja teleyritysten verkostot. Kun palvelin on vaarantunut, Moneron kryptovaluutan louhintaprosessi järjestetään siihen. Kyseisen haittaohjelman toimintaa on jäljitetty tammikuusta 2020 lähtien.
Erikoisuus FritzFrogissa on, että se säilyttää kaikki tiedot ja suoritettavan koodin vain muistissa. Levyn muutokset koostuvat vain uuden SSH-avaimen lisäämisestä authorised_keys-tiedostoon, jota käytetään myöhemmin palvelimeen pääsyyn. Järjestelmätiedostoja ei muuteta, mikä tekee matosta näkymätön järjestelmille, jotka tarkistavat eheyden tarkistussummien avulla. Muisti tallentaa myös sanakirjat raakoja salasanoja ja kaivostietoja varten, jotka synkronoidaan solmujen välillä P2P-protokollan avulla.
Haitalliset komponentit naamioidaan ifconfig-, libexec-, php-fpm- ja nginx-prosesseina. Botnet-solmut tarkkailevat naapureidensa tilaa ja jos palvelin käynnistetään uudelleen tai jopa käyttöjärjestelmä asennetaan uudelleen (jos muokattu authentic_keys-tiedosto siirrettiin uuteen järjestelmään), ne aktivoivat uudelleen isäntäkoneen haitalliset komponentit. Yhteydenpitoon käytetään tavallista SSH:ta - haittaohjelma käynnistää lisäksi paikallisen "netcatin", joka sitoutuu localhost-rajapintaan ja kuuntelee liikennettä portissa 1234, johon ulkoiset isännät pääsevät SSH-tunnelin kautta käyttämällä avainta kohdasta authorised_keys yhteyden muodostamiseen.
FritzFrog-komponenttikoodi on kirjoitettu Go-kielellä ja toimii monisäikeisessä tilassa. Haittaohjelma sisältää useita moduuleja, jotka toimivat eri säikeissä:
- Cracker - etsii salasanoja palvelimilta, joihin hyökättiin.
- CryptoComm + Parser - järjestää salatun P2P-yhteyden.
- CastVotes on mekanismi, jolla valitaan yhdessä kohdeisännät hyökkäystä varten.
- TargetFeed - Vastaanottaa luettelon solmuista, joihin hyökätä naapurisolmuilta.
- DeployMgmt on madon toteutus, joka jakaa haitallista koodia vaarantuneelle palvelimelle.
- Omistettu - vastaa yhteyden muodostamisesta palvelimille, jotka jo käyttävät haitallista koodia.
- Kokoa - kokoaa tiedoston muistiin erikseen siirretyistä lohkoista.
- Virustentorjunta - moduuli kilpailevien haittaohjelmien estämiseen, tunnistaa ja lopettaa prosesseja "xmr"-merkkijonolla, jotka kuluttavat suoritinresursseja.
- Libexec on moduuli Moneron kryptovaluutan louhintaan.
FritzFrogissa käytetty P2P-protokolla tukee noin 30 komentoa, jotka vastaavat tietojen siirtämisestä solmujen välillä, komentosarjojen suorittamisesta, haittaohjelmakomponenttien siirtämisestä, kyselyn tilasta, lokien vaihtamisesta, välityspalvelinten käynnistämisestä jne. Tiedot siirretään erillisen salatun kanavan kautta serialisoituna JSON-muodossa. Salaus käyttää epäsymmetristä AES-salausta ja Base64-koodausta. DH-protokollaa käytetään avainten vaihtoon (
Kaikki botnet-solmut ylläpitävät hajautettua tietokantaa, joka sisältää tietoja hyökkäyksistä ja vaarantuneista järjestelmistä. Hyökkäyskohteet synkronoidaan kaikkialla botnetissä – jokainen solmu hyökkää erilliseen kohteeseen, ts. kaksi eri bottiverkkosolmua eivät hyökkää samaan isäntään. Solmut keräävät ja lähettävät myös paikallisia tilastoja naapureille, kuten vapaan muistin koon, käytettävyyden, suorittimen kuormituksen ja SSH-kirjautumistoiminnan. Näitä tietoja käytetään päätettäessä, aloitetaanko kaivosprosessi vai käytetäänkö solmua vain muiden järjestelmien hyökkäämiseen (esimerkiksi louhinta ei ala ladatuissa järjestelmissä tai järjestelmissä, joissa on usein järjestelmänvalvojan yhteyksiä).
FritzFrogin tunnistamiseksi tutkijat ovat ehdottaneet yksinkertaista
merkkejä, kuten kuunteluyhteyden olemassaolo portissa 1234, läsnäolo
Lähde: opennet.ru