Uhatietokanta Haittaohjelma CanisterWorm-haittaohjelma

CanisterWorm-haittaohjelma

Laajalti käytettyyn Trivy-skanneriin kohdistunut hienostunut toimitusketjuhyökkäys on kärjistynyt laajemmaksi tietomurroksi, joka vaikuttaa lukuisiin npm-paketteihin. Kampanjan takana olevien uhkatoimijoiden epäillään käyttäneen aiemmin dokumentoimatonta itseään levittävää CanisterWorm-matoa, mikä lisää merkittävästi tunkeutumisen laajuutta ja vaikutusta.

Haittaohjelma on saanut nimensä siitä, että se käyttää osana komentoinfrastruktuuriaan Internet Computer Protocol (ICP) -kapselia, joka on hajautetussa lohkoketjussa isännöity peukalointia estävä älysopimus. Tämä on ensimmäinen julkisesti dokumentoitu tapaus, jossa ICP-kapseleita on aseistettu komento- ja hallintajärjestelmän (C2) päätepisteiden noutamiseen, mikä tuo mukanaan uuden ja kestävän taktiikan, joka monimutkaistaa perinteisiä torjuntatoimia.

Vaarantuneet paketit ja alustava käyttöoikeusvektori

Hyökkäys on vaikuttanut useisiin npm-paketteihin eri sovellusalueilla, mikä osoittaa laajan ulottuvuuden ohjelmistotoimitusketjussa:

  • 28 pakettia @EmilGroupin laajuusalueella
  • 16 pakettia @opengov-suoja-alueen sisällä
  • Lisäpaketit, mukaan lukien @teale.io/eslint-config, @airtm/uuid-base32 ja @pypestream/floating-ui-dom

Tämä kampanja seuraa tiiviisti tunnistetietojen murtamista, jonka ansiosta hyökkääjät pystyivät julkaisemaan haitallisia versioita Trivyyn liittyvistä työkaluista, erityisesti trivystä, trivy-actionista ja setup-trivystä, joihin oli upotettu tunnistetietojen varastamistoiminto. Operaation uskotaan liittyvän pilvipalveluihin keskittyneeseen kyberrikollisryhmään, joka tunnistettiin nimellä TeamPCP.

Tartuntatyönkulku ja hajautettu komentoinfrastruktuuri

Tartuntaketju alkaa npm-paketin asennusprosessin aikana, jossa asennuksen jälkeinen komentosarja suorittaa latausohjelman. Tämä latausohjelma ottaa käyttöön Python-pohjaisen takaportin, joka on suunniteltu kommunikoimaan ICP-säiliön kanssa. Säiliö toimii dead drop -ratkaisijana ja palauttaa URL-osoitteen, joka ohjaa tartunnan saaneen järjestelmän lataamaan ja suorittamaan seuraavan vaiheen hyötykuorman.

ICP-infrastruktuurin hajautettu luonne tarjoaa hyökkääjille merkittävän edun. Koska säiliö voi päivittää hyötykuorman URL-osoitetta dynaamisesti, uhkatoimijat voivat levittää uusia haitallisia binääritiedostoja kaikkiin tartunnan saaneisiin järjestelmiin muokkaamatta itse asennettua haittaohjelmaa. Tämä arkkitehtuuri tekee myös poistotoimista huomattavasti haastavampia.

Pysyvyysmekanismi ja piilotekniikat

Pysyvyys saavutetaan luomalla systemd-käyttäjäpalvelu, joka on konfiguroitu käynnistämään haitallinen prosessi automaattisesti uudelleen. Keskeisiä ominaisuuksia ovat:

  • Automaattinen uudelleenkäynnistys pakotetaan Restart=always-direktiivin kautta
  • 5 sekunnin viive ennen takaoven uudelleenkäynnistystä, jos se keskeytetään
  • Palvelun naamiointi lailliseksi PostgreSQL-valvontaohjelmistoksi nimellä 'pgmon'

Tämä lähestymistapa varmistaa jatkuvan toiminnan ja minimoi samalla havaitsemisen todennäköisyyden sulautumalla laillisiin järjestelmäpalveluihin.

Adaptiivinen hyötykuorman toimitus ja tappokytkimen toiminta

Takaovi kommunikoi ICP-säiliön kanssa säännöllisesti 50 minuutin välein käyttäen väärennettyä selaimen käyttäjäagenttia epäilysten välttämiseksi. Palautettu URL-osoite määrittää seuraavan toiminnon:

  • Jos URL-osoite osoittaa kelvolliseen hyötykuormaan, haittaohjelma lataa ja suorittaa sen
  • Jos URL-osoite sisältää 'youtube.com'-päätteen, haittaohjelma siirtyy lepotilaan.

Tämä mekanismi toimii käytännössä etätappokytkimenä. Vaihtamalla säiliön URL-osoitetta hyvänlaatuisen YouTube-linkin ja haitallisen hyötykuorman välillä hyökkääjä voi aktivoida tai deaktivoida haittaohjelman kaikissa tartunnan saaneissa järjestelmissä. Huomionarvoista on, että aiemmin suoritetut hyötykuormat jatkavat toimintaansa taustalla, koska haittaohjelma ei lopeta aiempia prosesseja.

Samankaltainen YouTube-pohjainen kill switch on havaittu myös troijalaisella Trivy-binääritiedostolla (versio 0.69.4), joka kommunikoi saman ICP-infrastruktuurin kanssa erillisen Python-dropperin kautta.

Matojen ominaisuudet ja automatisoitu lisääntyminen

Aluksi levitys perustui manuaalisesti suoritettuun komentosarjaan nimeltä deploy.js, joka hyödynsi varastettuja npm-todennustunnuksia haitallisen koodin lisäämiseksi saavutettaviin paketteihin. Tätä komentosarjaa ei käynnistetty asennuksen aikana, vaan se toimi itsenäisenä työkaluna hyökkäyksen ulottuvuuden laajentamiseksi.

CanisterWormin myöhemmät variantit ovat kehittyneet merkittävästi. Uudemmissa versioissa, kuten @teale.io/eslint-config-kansiossa (versiot 1.8.11 ja 1.8.12), mato sisällyttää itselisääntymisen suoraan paketin asennusprosessiin. Päivitetty mekanismi sisältää:

  • npm-todennustunnusten poiminta tartunnan saaneesta ympäristöstä
  • Levitysrutiinin välitön suorittaminen erillisenä taustaprosessina
  • Vaarantuneiden pakettien automaattinen julkaiseminen kerättyjen tunnistetietojen avulla

Tämä muutos muuttaa hyökkäyksen manuaalisesti operoidusta kampanjasta täysin autonomiseksi leviämisjärjestelmäksi.

Eskaloituminen itseään ylläpitäväksi toimitusketjun uhaksi

Automaattisen token-keruun ja itselevityksen käyttöönotto on kriittinen eskalaatio. Mikä tahansa kehittäjätyöasema tai CI/CD-putki, joka asentaa vaarantuneen paketin ja sisältää saatavilla olevia npm-tunnistetietoja, muuttuu aktiiviseksi levityssolmuksi. Tämä luo ketjureaktion, jossa tartunnan saaneet paketit johtavat lisätartuntoihin alavirran riippuvuuksissa.

Tässä vaiheessa uhka kehittyy yksittäisten tilien vaarantumisesta itsestään ylläpitäväksi haittaohjelmien leviämisen ekosysteemiksi. Jokainen uusi tartunnan saanut ympäristö edistää leviämistä, mikä mahdollistaa eksponentiaalisen kasvun ja vaikeuttaa merkittävästi eristämistä.

Huolta pahentaa se, että testausartefaktit, kuten paikkamerkkihyökkäys ('hello123'), osoittavat, että hyökkääjät tarkentavat ja validoivat aktiivisesti hyökkäysketjua ennen täysin toimivien haitallisten binäärien käyttöönottoa.

Trendaavat

Eniten katsottu

Ladataan...