Malware Go përhapet përmes ofruesve keqdashës të Terraform

Malware Go përhapet përmes ofruesve keqdashës të Terraform

Ofrues keqdashës të Terraform në regjistrin e HashiCorp shpërndanë malware të bazuar në Go, zbuluan studiuesit, në një sulm ndaj zinxhirit të furnizimit të lidhur me aktorë të Koresë së Veriut.

Studiuesit e sigurisë kanë zbuluar një fushatë malware të bazuar në Go që përdor ofrues keqdashës të Terraform dhe module Go të publikuara përmes HashiCorp Terraform Registry, duke shënuar herën e parë që aktorët e kërcënimit kanë përdorur këtë depo të centralizuar si një vektor shpërndarjeje për ngarkesa keqdashëse. Sipas Aikido, dy ofruesit e Terraform dhe dy modulet Go të përfshira janë gocommunity-io/dockerd (222 shkarkime), kreuzwenker/docker (1,449 shkarkime), gocommunity.io/orderedbtree dhe gogets.dev/btreex. Malware-i i shpërndarë përmes këtyre paketave tregon mbivendosje me Graphalgo, një fushatë e dokumentuar për herë të parë nga ReversingLabs në shkurt dhe e atribuar aktorëve të kërcënimit të Koresë së Veriut (DPRK).

Sulmuesit i afrohen zhvilluesve të mundshëm në LinkedIn, Facebook ose forume pune duke u paraqitur si kompani Web3 që nuk ekzistojnë, pastaj u kërkojnë atyre të përfundojnë një detyrë kodimi duke ofruar një depo të mirë GitHub që prezanton sjellje keqdashëse përmes një varësie të publikuar në npm ose PyPI. Zbulimi i fundit përkon me identifikimin e një grupi të ri paketash keqdashëse npm të shënuara nga Checkmarx, JFrog dhe SafeDep, duke përfshirë indexed-btree, mathsbase, mathmain, math-universe, modern-events, quick-events, crypto-hasher, events-router, sort-btree, graphcore-js dhe graphlib-js. Analiza tregon se në disa raste ekzekutimi i malware-it aktivizohet vetëm kur kryhet një operacion specifik kriptografik, një shenjë dalluese e një operacioni të synuar.

JFrog përshkroi sjelljen e ngarkesës: ajo deshifrohet vetëm kur viktima zgjidh një sistem linear me një matricë specifike, merr urdhrat e saj nga një kontratë inteligjente në Ethereum Sepolia testnet, mban një kanal të dytë komandimi të hapur përmes Slack, dhe fshihet pas numrave të shkarkimeve të prodhuara nga një fermë punëtorësh GitHub Actions. Implantuesi është i kriptuar me kriptografi asimetrike, kështu që funksionet e tij të sakta mbeten të panjohura. Ai kontakton një kanal Slack dhe pyet pikën fundore conversations.history çdo 10 sekonda, duke vepruar mbi tre lloje paketash: paketa start për të filluar një transferim skedari, paketa chunk për të furnizuar përmbajtjen e skedarit, dhe paketa end për të bashkuar pjesët. SafeDep vuri në dukje se rruga e blockchain deshifron të dhëna në distancë, shkruan një program të quajtur subwatcher, dhe e nis atë me Node.js, por studiuesit rikuperuan implantuesin dhe jo kodin e mëvonshëm të dorëzuar përmes këtyre kanaleve, kështu që ata nuk mund të thonë se çfarë detyrash kreu një operator në një viktimë.

Aikido zbuloi se malware-i i shpërndarë përmes ofruesve të Terraform dhe moduleve Go është një port Go që ndan infrastrukturën e blockchain dhe Slack me versionin npm. Ai ka kanale të dyfishta komandimi dhe kontrolli (C2) duke përdorur dead drops blockchain dhe një token bot Slack. Pas infektimit, ai mbledh informacione të sistemit duke përfshirë atribute harduerike, sistemin operativ, emrin e hostit dhe nëse Node.js është i disponueshëm, pastaj i dërgon ato të dhëna në një kanal Slack të kontrolluar nga sulmuesi përmes API. Studiuesi i sigurisë Oliver Smith shpjegoi se pas thirrjes së check-in, malware-i gjeneron një çift çelësash publik-privat efemer dhe e kombinon atë me dy çelësa publikë të aktorit të kërcënimit për të krijuar çelësa të përbashkët, duke lejuar komunikimin përmes kanaleve të përbashkëta pa ekspozuar mesazhet C2 midis hosteve të infektuara. C2 i bazuar në blockchain merr të dhëna nga një kontratë inteligjente Ethereum në Arbitrum Sepolia testnet duke përdorur një adresë kontrate të koduar fort dhe pyet për komanda të kriptuara çdo tre sekonda, duke i ekzekutuar ato si kod Go ose JavaScript. Smith tha se ky mekanizëm është një tregues i mëtejshëm i një operacioni të synuar sepse të gjithë klientët konsumojnë të gjitha mesazhet dhe nuk bëjnë asgjë kur dështojnë të deshifrojnë mesazhet e destinuara për klientë të tjerë.

Studiuesi i sigurisë i Socket, Karlo Zanki, i tha The Hacker News se Graphalgo vazhdon të ndjekë të njëjtin libër lojërash operacional, me gjasë duke përdorur intervista të rreme pune si vektori kryesor i aksesit fillestar. Ekzekutimi kontrollohet nga një kontroll bazë për të dhëna të furnizuara me gjasë nga komponenti i front-end, i cili mund të sugjerojë aktivitet të synuar ngushtë, por më shumë gjasa pengon analizën nëse studiuesit zbulojnë ngarkesën e backend pa front-end përkatës. Operacioni origjinal Graphalgo shfaqi të njëjtën karakteristikë.

Shfaqja e ofruesve të Terraform është një taktikë e re, por Aikido shtoi se ndoshta nuk është befasuese sepse mund të sigurojë një rrugë më të drejtpërdrejtë drejt kredencialeve kritike të prodhimit, dhe tregon se aktori i kërcënimit po zgjeron fushatën përtej npm dhe PyPI. Kjo nuk është hera e parë që kundërshtarët e Koresë së Veriut kanë përdorur ofrues të Terraform për shpërndarjen e malware-it. SentinelOne raportoi javën e kaluar se grupi i aktivitetit të kërcënimit TraderTraitor përdori skedarë të armatosur të bllokimit të Terraform për të dorëzuar backdoor të bazuar në Rust nga regjistrat e personalizuar të ofruesve të Terraform të kontrolluar nga sulmuesit. Zanki tha se është shumë herët për të konkluduar me besim se aktorët e kërcënimit të lidhur me DPRK po përdorin regjistrat e Terraform si një taktikë të re shpërndarjeje, por shfaqja e tyre e fundit në dy fushata të veçanta e bën rastësinë më pak të mundshme. Ai shtoi se këta aktorë janë shumë adaptivë dhe mund të adoptojnë regjistrat e Terraform si kanalin e tyre të ardhshëm të shpërndarjes në shkallë të gjerë.

Veçmas, CloudSEK theksoi një ngarkues JavaScript të paraportuar të quajtur GHAPPIER që u shpërnda pas kompromisit të një pakete legjitime npm, @dforge-core/dforge-mcp. Aktualisht nuk dihet se si sulmuesit fituan akses në llogarinë e mirëmbajtësit, megjithëse dyshohet se makina e zhvilluesit mund të jetë infektuar nga një shtesë ose paketë keqdashëse. Versioni keqdashës 0.2.21 mbeti aktiv në npm për 35 minuta dhe 38 sekonda më 9 shtator 2026 përpara se mirëmbajtësi origjinal të kthente ndryshimet dhe të publikonte një version të pastër 0.2.22. I njëjti ngarkues u vëzhgua në 65 depo publike që i përkisnin 22 llogarive të veçanta. Studiuesi i CloudSEK, Vikas Kundu, tha se operatori mori kredencialet e ruajtura të një zhvilluesi dhe pastaj përdori ato kredenciale për të shkruar në çdo depo që zhvilluesi mund të shtynte. Një krahasim i dy kopjeve të ngarkuesit, një nga paketa npm dhe një tjetër nga depoja e një viktime të dytë, tregoi se zinxhiri i sulmit përdor të njëjtin host staging dhe kërkesë për një domen Vercel, por ndryshon në etiketën e fushatës, ghappier kundrejt g0115. Ngarkesa e dytë përdor teknikën NullReceiver për të marrë adresën e saj C2 193.247.144[.]38 nga një portofol sulmuesi dhe përmban sekuencën e bajtit të fundit 68656c6c6f6970626f742121 që deshifrohet në helloipbot!!. Ky aktivitet mbivendoset me një fushatë të gjatë të lidhur me Korenë e Veriut të njohur si PolinRider.

Projekti Rust gjithashtu paralajmëroi për një fushatë në vazhdim që synon anëtarët e rust-lang dhe pronarët e crate-ve popullore, me qëllim komprometimin e pajisjeve dhe llogarive të tyre për shpërndarjen e malware-it. Adam Harvey, një zhvillues softuerësh në Rust Foundation, tha se sulmuesit organizojnë një video-thirrje për diçka pozitive si një mundësi pune, projekti ose kontrate dhe pastaj e përdorin atë për ta bërë objektivin të instalojë diçka si një kodek audio që thuhet se mungon ose të ekzekutojë një komandë të vendosur në clipboard. Ata krijojnë profile të reja kompanish por që duken legjitime, duke përfshirë prani të besueshme në LinkedIn, për të kaluar inspektimin e shpejtë. Modus operandi mbivendoset me fushatën Contagious Interview të lidhur me Korenë e Veriut. Projekti Rust u bëri thirrje kontribuesve dhe pronarëve të crate-ve të tregojnë kujdes, të aktivizojnë autentifikimin me shumë faktorë dhe të kontrollojnë llogaritë për hyrje të papritura.

Për pronarët e faqeve të internetit dhe ekipet e IT, ky grup sulmesh ndaj zinxhirit të furnizimit është një kujtesë se varësitë nga regjistrat publikë nuk janë automatikisht të sigurta, edhe kur kanë numra shkarkimesh jo zero ose shfaqen në një depo legjitime. Rishikimi i kodit të palëve të treta përpara se të arrijë në prodhim, fiksimi i versioneve dhe kontrollimi i historisë së publikuesit mbeten mbrojtje thelbësore. AEU-I, shërbimi i konsulencës së IT dhe infrastrukturës me siguri të parë i AEU Group, ndihmon organizatat të prezantojnë rishikime të tilla të pavarura të varësive të palëve të treta dhe kontrolle të zinxhirit të furnizimit pa pretenduar se ka luajtur ndonjë rol në këto zbulime.

Si të Mbroheni

  1. Nëse përdorni Terraform, instaloni ofrues vetëm nga regjistri zyrtar i HashiCorp ose nga një publikues që tashmë e besoni, dhe mos u mbështetni vetëm në numrat e shkarkimeve.
  2. Gjatë çdo interviste pune ose testi kodimi të pakërkuar, mos ekzekutoni kod të panjohur ose mos instaloni softuer në kompjuterin tuaj; së pari verifikoni kompaninë përmes një faqe interneti zyrtare të veçantë dhe kanali kontakti.
  3. Aktivizoni verifikimin me dy hapa (autentifikim me shumë faktorë) për llogaritë tuaja GitHub, npm dhe hosting, dhe kontrolloni faqen e aktivitetit të hyrjeve të fundit për çdo gjë që nuk e njihni.
  4. Mbani një listë të thjeshtë me shkrim të të gjitha paketave dhe shtesave të palëve të treta nga të cilat varet faqja juaj e internetit, dhe përditësoni secilën sapo të shpallet një rregullim sigurie.
  5. Nëse një detyrë kodimi ju kërkon të shtoni një paketë që nuk e keni dëgjuar kurrë, ndaloni dhe kërkoni emrin e asaj pakete plus fjalën keqdashës përpara se ta ekzekutoni.
  6. Për pronarët e faqeve të internetit, përdorni një shërbim të menaxhuar hosting ose rishikimi sigurie që mund të ndihmojë në kontrollimin e kodit të palëve të treta përpara se të arrijë në faqen tuaj live.

Termat e Shpjeguar

  • Terraform provider Një shtesë që lejon mjetin Terraform të menaxhojë një shërbim ose burim specifik cloud.
  • Go module Një paketë kodi e shkruar në gjuhën e programimit Go që mund të ndahet dhe ripërdoret.
  • npm Një bibliotekë publike ku zhvilluesit ndajnë dhe shkarkojnë paketa kodi JavaScript.
  • PyPI Indeksi i Paketave Python, një bibliotekë publike e paketave të kodit Python.
  • command-and-control (C2) Kanali i fshehur i komunikimit që një operator malware përdor për të dërguar udhëzime në kompjuterët e infektuar.
  • blockchain dead drop Një mënyrë për të fshehur komandat brenda një kontrate inteligjente blockchain në vend të një serveri normal.
  • Ethereum smart contract Një program i vogël i ruajtur në blockchain Ethereum që ekzekutohet automatikisht kur plotësohen kushte të caktuara.
  • testnet Një kopje e veçantë e një blockchain e përdorur për testim, ku tokenët dixhitalë nuk kanë vlerë reale.

Shërbime AEU të lidhura

  • AEU-I Konsulencë IT dhe sigurie