Ipinamahagi ang RAT gamit ang mga malisyosong bersyon ng Axios sa npm

Huling pag-update: 5 Abril 2026
May-akda: TecnoDigital
  • Isang attacker ang nakompromiso ang npm account ng primary maintainer ng Axios at naglabas ng mga bersyon 1.14.1 at 0.30.4 na may phantom dependency na plain-crypto-js, na nag-deploy ng cross-platform RAT habang ini-install.
  • Nakipag-ugnayan ang malware sa isang C2 server (sfrclak[.]com) at nag-download ng mga partikular na payload para sa Windows, macOS, at Linux, nagsagawa ng system reconnaissance, nagpapanatili ng mga pana-panahong beacon, at sa ilang mga kaso, nagtatatag ng persistence.
  • Ang pag-atake, na iniugnay ng Google at iba pang mga mananaliksik sa aktor na Hilagang Korea na si UNC1069, ay pinagsama ang isang panahon ng pagkakalantad na humigit-kumulang tatlong oras kasama ang isang sopistikadong kampanya sa social engineering laban sa tagapangasiwa upang nakawin ang kanilang mga kredensyal.
  • Ang mga organisasyong nakapag-install ng mga apektadong bersyon ay dapat mangakong kumilos, maghanap ng mga RAT artifact, mag-rotate ng mga kredensyal, mag-pin ng mga secure na bersyon ng Axios, at palakasin ang kanilang mga kontrol sa supply chain, CI/CD, at pamamahala ng dependency.

Pag-atake sa Axios gamit ang RAT sa npm

Naranasan na ng komunidad ng pagbuo ng JavaScript ang isa sa mga nakakatakot na bagay na magpapaisip sa iyo kung gaano mo pinagkakatiwalaan ang iyong mga dependency, gaya ng ipinapakita ng mga isyu sa kahinaan ng library . Ang Axios, isa sa mga pinakalawak na ginagamit na HTTP library sa ecosystem, ay minanipula sa npm upang ipamahagi ang isang remote access trojan (RAT) sa pamamagitan ng tila lehitimong mga bersyon. Ang insidente ay tumagal lamang ng ilang oras, ngunit nilinaw nito na ang supply chain ng software ay mas manipis kaysa sa inaakala ng marami.

Ang seryosong isyu ay hindi lamang ang kakayahang palihim na maipasok ng mga attacker ang malware sa isang package na na-download nang sampu o daan-daang milyong beses sa isang linggo. Ang tunay na problema ay ginawa nila ito sa pamamagitan ng pag-hijack sa npm account ng main maintainer, paglalathala ng mga "opisyal" na bersyon na tila normal at hindi nakakaapekto kahit isang linya ng source code ng Axios . Ang lahat ng malisyosong pag-uugali ay nasa isang phantom dependency na partikular na idinisenyo para sa pag-atake.

Paano nabuo ang pangako ng Axios sa npm

Para maunawaan ang laki ng insidente, kailangan nating magsimula sa entry point. Nagawa ng attacker na kontrolin ang npm account ni “jasonsaayman,” ang pangunahing maintainer ng Axios, at binago ang nauugnay na email address sa isa na nasa ilalim ng kanilang kontrol , na naka-host sa Proton Mail. Mula sa sandaling iyon, nagkaroon sila ng malayang paglalathala ng mga bagong bersyon ng package na parang sila ang maintainer.

Gamit ang mga kredensyal na iyon, nag-upload siya ng dalawang malisyosong bersyon ng Axios: 1.14.1 at 0.30.4 , na sumasaklaw sa parehong pangunahing sangay ng proyekto. Ang mga pag-upload ay ginawa nang may pagitan lamang ng 39 minuto at, ayon sa pagsusuri ng StepSecurity, ay ginawa nang direkta mula sa npm gamit ang isang klasikong pangmatagalang token, na ganap na nilalampasan ang karaniwang CI/CD pipeline batay sa GitHub Actions.

Labingwalong oras bago ang huling pag-atake, nakapaglathala na ang aktor ng isang "malinis" na bersyon na may kaugnayan sa malisyosong dependency sa npm registry . Ang paunang hakbang na ito ay nagsilbi upang makabuo ng isang history at maiwasan ang ilang awtomatikong pagsusuri na mag-trigger kapag lumitaw ang isang ganap na bagong pakete sa oras ng pag-atake.

Ang kapansin-pansin ay hindi binago ng mga attacker ang source code ng Axios o gumawa ng anumang nakikitang pagbabago sa repositoryo ng GitHub . Sa katunayan, ang mga bersyon 1.14.1 at 0.30.4 ay walang katumbas na commit o tag sa GitHub; umiiral lamang ang mga ito sa npm. Ang pangunahing pagkakaiba ay nasa dependency file ng package, na inilathala sa registry.

Ang Axios, sa ilalim ng normal na mga pangyayari, ay nagdedeklara lamang ng tatlong dependency: follow-redirects, form-data, at proxy-from-env . Gayunpaman, sa mga nakompromisong bersyon, lumitaw ang pang-apat na dependency, isa na dati ay wala sa proyekto: plain-crypto-js, bersyon 4.2.1. Ang phantom library na ito ay hindi ginamit kahit saan sa Axios codebase, ngunit kasama rito ang isang post-install script na awtomatikong tumatakbo kapag ini-install ang package gamit ang npm, pnpm, o mga katulad na tool.

plain-crypto-js: ang phantom dependency na ipinatupad ng RAT

Ang susi sa pag-atake ay nasa karagdagang dependency na iyon. Ang plain-crypto-js ay inilathala sa npm ng isang user na nagngangalang "nrwise", na mayroon ding Proton Mail email address, at ang tanging layunin nito ay ang magsagawa ng isang obfuscated post-installation script sa Node.js (setup.js) . Ang script na iyon ay nagsilbing dropper, ibig sabihin, bilang unang installer para sa ikalawang yugto ng malware.

Kapag ini-install ang Axios sa isa sa mga bersyon nito na may poisoning, awtomatikong na-trigger ng npm post-install lifecycle ang plain-crypto-js code nang walang anumang espesyal na aksyon na kinakailangan mula sa developer . Kumonekta ang dropper sa isang command and control (C2) server na aktibo sa sfrclakcom domain, nakikinig sa port 8000, at nag-download ng payload na partikular sa operating system ng apektadong makina; maaaring matukoy ang pag-uugaling ito sa pamamagitan ng network traffic analysis.

  Ang pinakamahusay na libreng programa upang pamahalaan ang Windows Firewall

Inilarawan ng mga mananaliksik sa StepSecurity at iba pang mga pangkat ng pagsusuri ang isang napakaingat na pag-uugali. Matapos isagawa ang malisyosong payload, inalis ng dropper ang sarili nitong mga bakas: binura nito ang postinstall script, pinalitan ang package.json file ng isang "malinis" na bersyon, at nag-iwan ng node_modules file na, sa unang tingin, ay tila hindi nakakapinsala . Sa ganitong paraan, ang kasunod na manu-manong inspeksyon ay hindi natagpuan ang malisyosong code nang direkta sa loob ng Axios.

Para matukoy ang manipulasyon, ang tanging maaasahang palatandaan ay nasa mga lockfile (package-lock.json, pnpm-lock.yaml, yarn.lock) at ang pagkakaroon ng mga partikular na bersyon: axios 1.14.1 o 0.30.4 at plain-crypto-js 4.2.1, bilang karagdagan sa dalawang bersyon ng paketeng iyon na may mga intermediate na numero (4.2.0, 4.2.2) na naka-link sa ilang pagsusuri. Sa bahagi naman ng Socket, natukoy kalaunan na ang parehong malware ay naipamahagi rin sa pamamagitan ng mga paketeng @shadanai/openclaw (iba't ibang bersyon 2026.3.xx) at @qqbrowser/openclaw-qbot (0.0.130), at ang mga pamamaraan sa seguridad tulad ng honeypots ay makakatulong din sa pagtukoy ng mga katulad na kampanya.

Cross-platform RAT: Windows, macOS at Linux ang sentro ng atensyon

Kapag naisagawa na, ang setup.js script ay nagsilbing isang orchestrator na may kakayahang matukoy ang operating system at sundan ang isang landas ng pag-atake na partikular sa platform . Malinaw na paunang inihanda ang kampanya: ayon sa StepSecurity, ang mga umaatake ay may tatlong magkakahiwalay na payload na paunang na-compile, isa para sa bawat sistema.

Sa mga macOS system, ang proseso pagkatapos ng pag-install ay naglunsad ng isang AppleScript na nag-download ng isang Trojanized binary mula sa sfrclakcom:8000 server . Ang binary na ito ay na-save sa /Library/Caches/com.apple.act.mond path, ang mga pahintulot nito ay inayos upang gawin itong executable, at sa wakas, sinimulan ito sa background gamit ang /bin/zsh. Nang tumakbo na ang RAT, ang AppleScript mismo ay tinanggal upang lalong maging kumplikado ang forensic analysis.

Sa mga makinang Windows, natagpuan ng malware ang PowerShell binary ng system, kinopya ito sa %PROGRAMDATA%\wt.exe upang itago ito bilang Windows terminal, at bumuo ng isang pansamantalang VBScript . Pagkatapos ay nakipag-ugnayan ang VBScript na ito sa C2 server upang mag-download ng karagdagang PowerShell RAT script, isinagawa ito, at pagkatapos ay binura ang na-download na file. Bukod pa rito, nilikha ng variant ng Windows ang %PROGRAMDATA%\system.bat file na may download routine na nagpapahintulot sa malware na makuha ang sarili nito sa bawat pag-login at nagdagdag ng execution key sa Windows registry upang matiyak ang persistence.

Sa Linux at iba pang mga sistemang parang Unix bukod sa macOS, ginamit ng dropper ang execSync ng Node.js upang maglunsad ng isang command na shell na nag-download ng Python script mula sa sfrclakcom, nag-save nito bilang /tmp/ld.py, at nagpatakbo nito gamit ang nohup upang mapanatili itong tumatakbo sa background . Hindi tulad ng Windows, ang variant na ito ay hindi nagpakita ng isang matatag na mekanismo ng persistence, na nagmumungkahi ng isang mas mabilis na diskarte na nakatuon sa data exfiltration o ang paminsan-minsang pag-deploy ng persistence sa pamamagitan ng mga kasunod na command.

Sinuri ng SafeDep at Elastic Security Labs ang mga payload na nasa ikalawang antas at napagpasyahan na ang mga RAT para sa macOS (C++ Mach-O binary) at Linux (Python script) ay may parehong command set, C2 protocol, format ng mensahe, at operational behavior . Ang ganitong uri ng pagsusuri ay karaniwang umaasa sa mga serbisyo sa pag-scan tulad ng VirusTotal , na nagpapadali sa ugnayan ng mga sample at IOC.

Sa lahat ng mga kaso, ang bawat nakompromisong host ay nagsagawa ng agarang pagmamanman sa sistema: mga direktoryo ng gumagamit, mga ugat ng drive, mga aktibong proseso, at iba pang metadata . Ang impormasyong ito ay ipinadala sa command and control server, at pinanatili ng ahente ang isang beacon loop nang humigit-kumulang 60 segundo, naghihintay ng mga bagong tagubilin, kabilang ang pagpapatupad ng mga karagdagang script o ang pag-inject ng mga binary sa memorya.

Panahon ng pagkakalantad, mga layunin, at pagpapatungkol sa Hilagang Korea

Ang mga malisyosong bersyon ng Axios ay naging available sa npm sa loob ng humigit-kumulang tatlong oras, sa loob ng maingat na napiling takdang panahon. Ang mga nakompromisong pakete ay inilathala bago maghatinggabi noong Linggo (isang oras na nagpabilis sa oras ng reaksyon ng mga tagapagtanggol), at ang insidente ay napigilan noong Lunes ng madaling araw , matapos alertuhan ng mga kompanya ng seguridad ang mga awtoridad tungkol sa hindi pangkaraniwang pag-uugali.

Sa loob ng medyo maikling panahong iyon, nakatukoy ang Huntress ng hindi bababa sa 135 na sistema na kumokonekta sa server ng attacker . Dahil ang Axios ay nagtatala ng mahigit 80-100 milyong download kada linggo (ayon sa iba't ibang sanggunian, mahigit pa nga sa 300 milyon sa ilang panahon), ang bilang na iyon ay malamang na kumakatawan lamang sa dulo ng iceberg, limitado sa mga sistemang nakukuha ng atensyon ng mga analytics firm na naglabas ng kanilang data sa publiko.

  Paano malalaman kung totoo ang isang Windows update at tunay ang iyong lisensya

Iniugnay ng Google, sa pamamagitan ng Threat Intelligence team nito, ang pag-atake sa isang pinaghihinalaang aktor na Hilagang Korea na may label na UNC1069 . Pinagtibay ng Elastic Security Labs ang hypothesis na ito sa pamamagitan ng pagtuklas ng isang malakas na pagkakatulad sa pagitan ng RAT na inihatid sa macOS at WAVESHAPER, isang C++ backdoor na natuklasan ng Mandiant at naka-link din sa parehong threat group.

Binigyang-diin ng mga analyst ng Google na ang mga grupong may kaugnayan sa Hilagang Korea ay matagal nang dalubhasa sa mga pag-atake sa supply chain at mga operasyon ng pagnanakaw ng cryptocurrency . Pare-pareho ang padron: nakompromiso ang imprastraktura ng pag-unlad, malawakang ginagamit na mga library, o pinagkakatiwalaang software upang pagkatapos ay lumipat patungo sa mga target na namamahala ng mga asset na may mataas na halaga, mga pribadong key, o mga kredensyal.

Itinampok din ng ilang ulat na ang moderasyon at disenyo ng pag-atake ay nagmumungkahi ng isang mahusay na koordinasyon ng pangkat : tatlong parallel na implementasyon ng parehong RAT (PowerShell, C++, at Python), isang pare-parehong C2 protocol, halos magkaparehong pag-uugali sa lahat ng variant, at isang malinaw na diskarte sa paglilinis sa sarili upang maiwasan ang pag-iiwan ng mga bakas. Binigyang-diin ng Elastic na ang pagkakapare-parehong ito ay tumutukoy sa isang developer o isang grupo na nagtatrabaho mula sa isang ibinahaging dokumento ng disenyo, malayo sa improvisasyon.

Advanced social engineering laban sa Axios maintainer

Higit pa sa mga teknikal na aspeto, isa sa mga pinakanakakabahala sa kaso ay kung paano na-hijack ang npm account ng pangunahing tagapangasiwa. Ipinaliwanag mismo ng Axios manager na pinagana niya ang two-factor authentication sa halos lahat ng kanyang mga serbisyo , ngunit nauwi pa rin siya sa pagbibigay ng access nang hindi niya namamalayan.

Ayon sa post-mortem analysis na ibinahagi ng team, nagsagawa ang mga attacker ng isang napakasalimuot na social engineering operation, na sinusuportahan ng mga AI-powered tools, para makuha ang kanilang tiwala . Ginaya nila ang tagapagtatag ng isang kumpanya, kinopya ang visual identity, litrato, at maging ang corporate branding nito. Gumawa sila ng isang tunay na Slack space na may logo ng kumpanya, mga channel na may mga post na umano'y naka-sync sa LinkedIn, at maging ang mga pekeng profile ng mga empleyado at iba pang open-source software maintainer.

Sa loob ng kapaligirang iyon, nag-iskedyul sila ng isang pulong sa pamamagitan ng Microsoft Teams kung saan tila kalahok ang isang buong grupo ng mga propesyonal . Sa panahon ng pulong, ginaya nila ang isang teknikal na problema at ipinahiwatig na ang isang bahagi ng kanilang sistema ay luma na. Ang maintenance technician, sa pag-aakalang ito ay isang lehitimong kinakailangan na may kaugnayan sa mismong tool sa videoconferencing, ay nag-download at nag-install ng iminungkahing file.

Ang file na iyon, sa katunayan, ang remote access Trojan na nagpapahintulot sa mga attacker na lumipat sa mga kredensyal ng biktima at sa huli ay kontrolin ang npm account na ginamit upang i-publish ang Axios . Ang buong proseso ay napakahusay na naayos, na may napakaraming kapani-paniwalang detalye, kaya inilarawan ito ng biktima bilang "ganap na naayos, propesyonal, at ganap na nakakakumbinsi."

Nilinaw ng elementong pantao na ito sa insidente na kahit ang mga teknikal na hakbang tulad ng 2FA ay hindi sapat kapag ang mataas na antas ng social engineering ay pinagsama sa visual na panggagaya, mga deepfake, o detalyadong pag-clone ng mga organisasyon . Ang pinakamahinang kawing, muli, ay ang interaksyon ng tao.

Epekto sa mga organisasyon at developer na gumagamit ng Axios

Mula sa praktikal na pananaw, ang pangunahing problema ay ang pagtukoy kung sino talaga ang naapektuhan. Anumang organisasyon na nag-install ng [email protected] o [email protected] sa panahon ng kanilang pagiging available ay dapat ipagpalagay na ang makina o pipeline na nagsagawa ng pag-install ay maaaring nakompromiso.

Malinaw ang mga rekomendasyon mula sa mga kumpanyang tulad ng StepSecurity, Aikido, Huntress, at Elastic. Kung sakaling may hinala, kinakailangan ang isang proaktibong pamamaraan, hindi lamang ang "pagtanggal at muling pag-install ng node_modules ." Ang maingat na hakbang ay muling buuin ang mga apektadong makina o kapaligiran mula sa mga pinagkakatiwalaang imahe at maingat na suriin ang mga CI/CD log upang matukoy kung aling mga trabaho o pipeline ang maaaring nagsagawa ng mga nakompromisong bersyon.

Bukod pa rito, mahalagang i-rotate ang lahat ng credential at secret na maaaring na-access ng RAT mula sa mga node na iyon : mga npm token, cloud provider key, pipeline secret, database credential, SSH key, atbp. Ang pag-iiwan sa mga credential na ito sa sirkulasyon pagkatapos ng naturang pag-atake ay nag-iiwan ng pinto para sa tahimik na lateral movement.

  Kumpletong gabay sa real-time na paghahanap sa Laravel

Sa teknikal na antas, dapat suriin ng mga pangkat ang kanilang mga lock file (package-lock.json, pnpm-lock.yaml, yarn.lock) para sa mga sanggunian sa mga nakompromisong bersyon ng Axios at plain-crypto-js . Kung matagpuan ang mga elementong ito, ang susunod na hakbang ay siyasatin ang mga apektadong sistema para sa mga potensyal na RAT artifact: /Library/Caches/com.apple.act.mond sa macOS, %PROGRAMDATA%\wt.exe at %PROGRAMDATA%\system.bat sa Windows, o /tmp/ld.py sa Linux.

Kasabay nito, inirerekomenda na tahasang magtakda ng mga secure na bersyon ng Axios, tulad ng 1.14.0 at 0.30.3, at gumamit ng mga override o resolution upang maiwasan ang paglutas ng mga transitive dependencies patungo sa mga hindi kanais-nais na bersyon . Ang pagharang sa papalabas na trapiko patungo sa sfrclakcom domain ay isa ring makatwirang hakbang sa pagpigil, kahit man lang habang sinusuri ang buong saklaw ng pag-atake.

Mga aralin sa seguridad para sa supply chain ng software

Ang insidente ng Axios ay hindi isang nakahiwalay na pangyayari, kundi isa na namang kawing sa isang kadena ng mga pag-atake sa supply chain na kinabibilangan ng mga kaso tulad ng SolarWinds, Kaseya, 3CX, Polyfill.io, at mga kahinaang sinamantala sa Log4j. Ang pangunahing ideya ay palaging pareho: ikompromiso ang isang malawakang ginagamit at pinagkakatiwalaang bahagi upang ma-maximize ang abot , sa halip na tangkaing atakehin ang makina por makina.

Isa sa mga pinakamadalas na inuulit na aral mula sa mga eksperto ay ang tiwala ay hindi maaaring umasa lamang sa popularidad ng isang library o sa reputasyon ng isang maintainer . Kung ang release channel (ang npm account, ang CI/CD pipeline, ang build infrastructure) ay makompromiso, lahat ng inilalabas sa pamamagitan nito ay magmamana ng panganib na iyon. Hindi rin sapat ang manu-manong pagsusuri ng code kung ang malware ay nagtatago sa mga transitive dependencies at binubura ang sarili nito pagkatapos ng pagpapatupad.

Binigyang-diin din na ang "default speed" para sa mga dependency update ay may kaakibat na kapalit pagdating sa surface attack . Ang palaging awtomatikong pag-aampon ng pinakabagong bersyon ay lubos na maginhawa, ngunit nagbubukas ito ng pinto para sa pagkalat ng isang malisyosong update sa loob lamang ng ilang minuto. Pinag-iisipan na ng ilang organisasyon ang mga patakaran tulad ng pag-aatas na ang isang bagong bersyon ay nasa ecosystem sa loob ng isang partikular na panahon bago ang pag-aampon, o pag-aatas na ang mga pagbabago sa mga kritikal na pakete ay sumailalim sa karagdagang manu-manong pagsusuri.

Tungkol sa imprastraktura ng pag-unlad, ang mga kapaligirang CI/CD ay dapat ituring bilang mga lubhang sensitibong asset . Anumang RAT na isinasagawa habang ini-install ang dependency ay halos tiyak na maghahanap ng mga sikreto ng pipeline at access sa iba pang mga kapaligiran. Ang pag-segment sa mga node na ito, mas malapit na pagsubaybay sa mga ito, at pana-panahong pag-ikot ng kanilang mga sikreto ay hindi na isang "ideal" na rekomendasyon kundi isang pangangailangan.

Panghuli, ang pagtukoy sa mga ganitong uri ng pag-atake ay nangangailangan ng pagsasama-sama ng impormasyon mula sa maraming mapagkukunan: mga naka-install na bersyon, mga lockfile, mga tagapagpahiwatig ng pagkakompromiso ng operating system, at telemetry ng network . Ang mga tool na bumubuo at namamahala sa Software Bill of Materials (SBOM) ay nakakatulong na mabilis na masubaybayan kung aling mga proyekto ang gumagamit ng aling mga pakete, na mahalaga kapag na-trigger ang napakalaking mga alerto tulad nito.

Ang buong episode na ito kasama ang Axios ay nagpapakita kung gaano kalawak ang dependency ecosystem, gaano man ito kagulang at katatag, ay lubos pa ring umaasa sa tiwala at patuloy na pagbabantay. Ang isang tila hindi nakakapinsalang library, na pinapanatili ng isang tao lamang na naging biktima ng isang mahusay na isinagawang social engineering attack, ay maaaring maging, sa loob lamang ng ilang oras, isang pandaigdigang vector para sa pag-deploy ng mga cross-platform RAT laban sa mga kumpanya, freelancer, at organisasyon ng lahat ng laki . Ang pagpapalakas ng mga kontrol sa paligid ng mga publishing account, pipeline, at kritikal na dependency ay hindi na isang opsyonal na pinakamahusay na kasanayan, kundi isang kinakailangan para sa patuloy na pag-unlad sa isang kapaligiran kung saan ang mga umaatake ay lalong nagiging matiyaga, maparaan, at may mas mahusay na mga tool.

mga sistema ng pagpapatigas ng scripting
Kaugnay na artikulo:
Pag-script at pagpapatibay ng sistema: isang kumpletong gabay sa pagpapalakas ng mga server