Destûrnameya Pakêtê: Pakêta npm Gefên Ewr û Sîstemê Vedişêre

Belgeya Destûrê: Çîrokeke Bergê ya "Lêkolîna Destûrdar" a npm Veşartina Lêkolînên Metadata Cloud û Berdewamiya SYSTEMê

TL; DR

Di navbera 2026-06-15 û 2026-06-16 de, weşangerekî npm-ê pêş xist. şeş pakêt - bi tevahî 26 guhertoyên — ku li ser her skriptek dema sazkirinê dimeşîne npm installHer pakêt READMEyek dişîne ku wê wekî berhemeke lêkolînê ya HackerOne / GitHub Bug Bounty ya "baş" radigihîne ku "qet" nirxên bawernameyê nagire û "tu domdariyê pêk nayne". Kod bi redkirina qanûnê re li hev nayê. Li ser Linux CI runners, çengela sazkirinê hawîrdorê dişopîne û xala dawî ya mînaka-metadata ya ewr lêkolîn dike; li ser Windows-ê ew bilindkirinê dixwaze, wekî dixebite SYSTEM, û kanalek fermanê ji bo mêvandarek derveyî vedike. Niha nîşaneya ku divê lê were gerîn mêvandara C2 ye. 173.255.233[.]239. Giraniya: bilindEkosîstema bandordar: npmNav di nav dengê girêdayîbûna entegrasyona domdar de tevlihev dibin (metrics-pipeline-d8k2, event-metrics-q3x7, pkg-telemetry-r4f9, û sê xwişk û bira).

Êrîş: Çawaniya Karê Wê

Her pakêtek di klusterê de bi heman awayî hatiye çêkirin. pakêt.json heman fermanê di du çerxên jiyanê de vedihewîne hooks:

{   "scripts": {     "preinstall": "node run.js",     "postinstall": "node run.js"   } }

Li ser herduyan jî dixebite pêş-sazkirin û piştî-sazkirinê tê vê wateyê ku barkêş çalak dibe bêyî ku gavên sazkirinê yên paşê bi ser bikevin an na. bimeşîne.js bi xwe belavkerek platformek deh-xêzî ye:

// Platform dispatcher — runs beaconNN.js on Windows, beacon_linux.js on Linux. // GitHub Bug Bounty authorized research. Contact: nicholas@curran.tech 'use strict'; const { execFileSync } = require('child_process'); const path = require('path'); const node = process.execPath; const script = process.platform === 'win32'   ? path.join(__dirname, 'beacon34.js')   : path.join(__dirname, 'beacon_linux.js'); try { execFileSync(node, [script], { stdio: 'inherit', timeout: 90000 }); } catch (e) {}

Piştre ev tevger li gorî pergala xebitandinê dabeş dibe. Her şeş pakêt heman du perçeyan hildigirin — bimeşîne.js û beaconên platformê - ji ber vê yekê ew dilopên guhêrbar in ne şeş amûrên cuda. ​​Tenê cûdahiya watedar di navbera wan de rêjeya weşanê ye: çar nav carekê hatine şandin, lê du ji wan her 30-60 hûrdeman bi saetan ji nû ve hatine weşandin, ku guhertoyek nû çapkirî li ber sazker û çareserkeran dihêle, her çend yên kevintir werin kişandin jî.

Li ser Linux (beacon_linux.js) profîlên skrîptê yên ku lê dixebite. Navên guhêrbarên jîngehê rêz dike, pelên di bin de dixwîne / proc, kontrol dike ji bo docker.sock, û direve hostname û ez kî mePiştre daxwazek HTTP-ê ji bo xala dawî ya mînaka-metadata ya konteynera AWS-ê dişîne. 169.254.170 [.]2 — navnîşana girêdana herêmî ya peywirek ECS-ê dipirse da ku mîheng û pêbaweriyên rola xwe ya demkurt bistîne (IMDS, karûbarê metadataya mînakê). Encam ji berhevkarê kampanyayê re li POSTkirî têne şandin. 173.255.233 [.]239.

Li ser Windows-ê (beacon34.js / beacon18.js) pakêt ji profîlkirina mêvandarê xwe pir bêtir tiştan dike. Koda nîşankirî mifteyek qeydkirinê di bin de zêde dike ms-settings derhêner bi Delege bikeBicîh bike nirx — rêgezek kontrolkirina hesabê bikarhêner a naskirî ku dihêle pêvajoyek ku were destpêkirin bêyî daxwazek bilindkirî bixebite. Ew PowerShell-ê vedixwîne -ExecutionPolicy Bypass û Vexwendina-Îfadeyê, di NT DESTÛR \ PERGAL çarçoveyek, û ji bo fermanan ji hostek derveyî lêpirsîn dike. Kanala fermana Windows-ê li ser Tunela Cloudflare, sînorkirinên-perdeyên-bi-qat.trycloudflare[.]com:443, vedigere bo 173.255.233[.]239:443, bi karanîna sê xalên dawî: /c2/anket ji bo anîna fermanekê, /c2/derve ji bo vegerandina hilberînê, /c2/eof Girtin.

Li vir çi nû ye: redkirin wekî kamuflaj

Hêmana nû ne barkêşî ye - vedîtina hook-a sazkirinê û bilindkirina Windows-ê herdu jî baş hatine belgekirin. Ew çîroka bergê ye. Her pakêtek README-yek hildigire ku wekî berhemeke eşkerekirina berpirsiyar tê xwendin:

# @ncurran/sandbox-recon-880538 — authorized npm-sandbox security research

Ev e benign pakêtek ku di çarçoveya `@ncurran` ya nivîskar de wekî beşek ji tevlêbûna HackerOne / GitHub Bug Bounty ya destûrdar (npm di çarçoveya wê de ye).

Di dema sazkirinê de, ew kontrol dike jîngeha xwe ya pêkanînê … guhêrbar-hawîrdorê

tenê navên sereke ... kontrol dike ka baş tê zanîn an na xalên dawî yên metadataya ewr in gihîştinî ... Ew tenê kodên rewşê, dirêjahiya bersivê, û rapor dike haş — qet her bawernameyek, nirxa nîşanekan, an daneyên partiya sêyemîn. Ew ti kar nake berdewamî, bê tevgera alî, û bê çalakiyek wêranker.

Sê îdiayên di wê nivîsê de bi koda şandî re nakok in. README dibêje "domandin tune," lê beacon-a Windows-ê mifteyek bilindbûnê ya li ser bingeha qeydê dinivîse. Ew dibêje "qet ti bawername, nirxa nîşanekan tune," lê rêya Windows-ê fermanên keyfî yên hatine wergirtin wekî SÎSTEM, ku ti sînorek wisa li ser tiştên ku têne xwendin an vegerandin datîne. Tewra pakêtek jî bi nav dike - @ncurran/sandbox-recon-880538 — ew ne ew e ku tê de tê şandin, ku nîşan dide ku README şablonek ji nû ve hatî bikar anîn e ne ravekirina berhema di dest de. Redkirina razîbûnê di pakêtek de ku qurbanî qet razî nebûye ku saz bike, razîbûnê nade. Dabeşkirin li vir bêyî ku peyv çi be, xerab e. Redkirin di heman demê de armancek bêdengtir heye: gavek triyajê ya otomatîk ku nivîsa pakêtê ji bo sînyalên dilniya dixwîne - "baş", "destûrdar", bernameyek bi nav, e-nameyek têkiliyê - dikare bi prosa ku barkêş nakok e ber bi biryarek ewle ve were ajotin. Ders ji bo nirxanderên mirovan û makîneyan jî derbas dibe: tevgera dema sazkirinê bipîvin, ne ravekirina xwe-README.

Timeline

Hemû pakêt di nav pencereyeke 24 demjimêran de xuya bûn. Çar navên guhertoyên yekane pêşî hatin weşandin, piştre du pakêt her 30-60 hûrdeman carekê ji nû ve hatin weşandin.

Dîrok (UTC) Bûyer
2026-06-15 18:32 Pakêta yekem hat weşandin — npm:pkg-telemetry-r4f9@1.0.0
2026-06-15 19:50 npm:runtime-metrics-w7k2@1.0.0 weşandin
2026-06-15 20:14 npm:build-tracker-n5p1@1.0.0 weşandin
2026-06-15 20:35 npm:npm-sandbox-ping-r9t2@1.0.0 weşandin
2026-06-15 21:09–22:42 npm:event-metrics-q3x7 weşandin 1.0.0 → 1.0.8 (9 guhertoyên)
2026-06-15 23:40 → 2026-06-16 04:40 npm:metrics-pipeline-d8k2 weşandin 1.0.0 → 1.0.10 (11 guhertoyên)
2026-06-16 Komek wekî zirardar hat tespîtkirin û dabeşkirin; çend tarball berê 404 li qeydê vedigerînin (berdewam dike)

Kampanya nû ye û rakirin hîn jî di rê de ye: di dema analîzê de hin guhertoyên li qeydê çareser bûn û yên din ne. Hemî 26 guhertoyan wekî xeternak bihesibîne.

Nîşaneyên Lihevhatinê

pakêtên

Ecosystem Pakêt guhertoyên Rewş
npm metrics-pipeline-d8k2 1.0.0 – 1.0.10 xerab
npm event-metrics-q3x7 1.0.0 – 1.0.8 xerab
npm runtime-metrics-w7k2 1.0.0 xerab
npm build-tracker-n5p1 1.0.0 xerab
npm npm-sandbox-ping-r9t2 1.0.0 xerab
npm pkg-telemetry-r4f9 1.0.0 xerab

Têkelî

Awa indicator Notes
IP 173.255.233[.]239 Berhevkarê C2; POST-a ji nû ve vesazkirina Linux-ê û vegera paşîn a Windows-ê: 443
Domain diameter-coins-limitations-parents.trycloudflare[.]com Kanala fermana Windows-ê li ser tunelek Cloudflare, :443
Rêya URI /c2/poll, /c2/out, /c2/eof Fermana Windows pirsîn / derketin / girtin
IP 169.254.170[.]2 Xala dawî ya mînaka-metadata ya AWS ECS ji çengela sazkirinê ve hat lêkolînkirin

Behavioral

Signal Terîf
Lêkirin hooks preinstall û postinstall her du jî direvin node run.js
Şandina platformê run.js dimeşe beacon_linux.js li ser Linuxê, beacon34.js / beacon18.js li Windows
Vejandina Linuxê Navên mifteyên env-var hejmar dike, dixwîne /proc, kontrol docker.sock, direve hostname / whoami, IMDS-ê lêkolîn dike
Bilindahiya pencereyan ms-settings DelegateExecute derbasbûna UAC ya qeydê; PowerShell -ExecutionPolicy Bypass + Invoke-Expression; wek dixebite SYSTEM
Sergirtin README îdia dike ku lêkolîna "baş" "destûrdar" û "bê berdewamî" ye; behsa navekî pakêtê dike ku ew tê de naşîne.

Vegotin û tevgera çavdêrîkirî

Em weşanger tenê bi nîşanên wî diyar dikin û nasnameya ti kesê li pişt hesabê eşkere nakin.

  • Kataloga sînyalan. Her şeş pakêt ji hêla heman hesabê npm ve hatine weşandin, npmresearch8847, bi e-nameya diyarkirî re npmresearch8847@web-library.net (e-name û SCM verastkirin herdu jî tune ne; me xwedîtî verast nekiriye). README di bin de têne weşandin @ncurran çarçove û têkiliyek bide nicholas@curran.tech, û bimeşîne.js xalên li depoyê github.com/ncurran/npm-sandbox-research`. Şeş pakêt heman tiştî parve dikin bimeşîne.js belavker, hevpar beacon_linux.js qonaxa vejandinê, û mêvandarê koleksiyonerê yekane 173.255.233[.]239`. Şêweya navlêkirinê lihevhatî ye: qurmek bi dengê CI ya gelemperî (metrîk, telemetrî, şopînerê avakirinê, sandbox-ping) û paşgirek kurt a rasthatî.
  • Bawerî. Ew şeş pakêt li ser hêza dispatcherê hevpar, qonaxa keşfê, û mêvandarê C2 wekî yek kampanyayek xuya dikin. Çarçoveya "lêkolîna destûrdar" li seranserê her şeş README-yan hevgirtî xuya dike. Em nekarîne piştrast bikin ku bernameyek xelata bug-ê ev çalakî destûr daye, û îdiayên redkirinê bi koda şandinê re li hev nakin.
  • Kapasîteya dîtbarî. Tecrubeya barkêşiyêcisçar çînên şiyanê hene: bicîhanîna koda install-hook li ser herduyan pêşda saz kirin û piştî sazkirinê; keşifkirina jîngeha mêvandar û CI bi derketina ji berhevkarek derveyî; lêkolîna gihîştina metadata-nimûneya ewr ji çarçoveya sazkirinê; û, li ser Windows-ê, zêdekirina îmtiyazên herêmî, pêkanîn wekî SÎSTEM, û çerxeke fermana fetch-and-run li ser kanaleke derveyî. Çerxa fermana Windows-ê şiyana kontrola ji dûr ve ye: ew talîmatan dipirse û derana wan vedigerîne.

Bandor, Trend û Tiştên ku Divê Parêzer Bikin

Bikirin

Ji bo jîngehên avakirina otomatîk, rêjeya eşkerekirinê herî zêde ye. Sazkirinek npm di CI de çerxa jiyanê dimeşîne. hooks bi her nasnameya ku runner digire; li ser runnerek ewr ew nasname pir caran xalek dawî ya metadata ya gihîştî û bawernameyek rolê vedihewîne. Navnîşana ku beacon Linux lêkolîn dike, 169.254.170 [.]2, xala dawî ya metadata-task a AWS ECS ye: karekî ku dikare bigihîje wê bi gelemperî dikare bawernameyên demkî yên rola karê xwe ji heman karûbarê girêdana herêmî jî bistîne. Kontrolkirina gihîştinê ji hundirê skrîptek sazkirinê gava ku beriya kişandina wan bawernameyan e, ji ber vê yekê divê her bezvanek ku çengelê dimeşand û dikaribû bigihîje wê xala dawî wekî ku rola karê xwe eşkere kiriye were hesibandin. Li ser pêşdebirê Windows-ê an mêvandarek çêkirinê, barkêş daxwaza bilindkirinê dike û kanalek fermanê vedike, ku eşkerekirinê ji profîlek-û-derketinê ya yekane berbi kontrola dûr a înteraktîf fireh dike.

Berî rakirinê, me nekarî hejmarên dakêşanê yên pêbawer ji bo guhertoyên xerabkar bi dest bixin, ji ber vê yekê em hejmara qurbaniyan texmîn nakin. Ji nû ve weşandina bilez a du pakêtan - yanzdeh û neh guhertoyên di çend demjimêran de - di heman demê de ku guhertoyên kevintir dihatin rakirin, berhemên nû li ber sazker û çareserkeran hişt.

Nimûneyên derketinê

Ev kom mînakek e ji bo etîketekê ku wekî bergir tê bikar anîn. "Lêkolîna destûrdar", "xelata bug," û "ceribandina sandbox" bi zêdebûnê ve girêdayî pakêtên ku skrîptên sazkirinê ji profîla mêvandarek bêtir tiştan dikin têne kirin. Çarçovekirin li ser dudiliya nirxanderek ji bo tevgerîna li dijî tiştek ku xwe wekî pejirandî radigihîne, bazar dike. Ew bi taktîkek duyemîn a naskirî re hevber dibe: navên pakêtan hatine çêkirin ku mîna amûrên CI yên navxweyî xuya bikin da ku ew ji nihêrînek bilez a li darek girêdayîbûnê derbas bibin. Ev têkelbûn ew e ku şablonê hêjayî temaşekirinê dike - navek ku wekî lûleyên binesaziyê tê xwendin, di pexşanê de tê pêçandin ku wekî ceribandinek pejirandî tê xwendin, li pêş çengelek sazkirinê ye ku li ser yek pergala xebitandinê zêde dibe û li ser ya din pêbaweriyên ewr diceribîne. Ne redkirin û ne jî navê bêkêr tiştê ku kod di sazkirinê de dike diguherîne, û pêvajoyek triyajê ku yek ji wan wekî delîlên sivikkirinê dinirxîne dê bigihîje biryarek xelet.

Divê parêzer çi bikin

  • Ji bo şeş navên pakêtan li lockfiles û tomarên sazkirinê bigere; her hevberdanek wekî bûyerek bihesibîne, ne wekî hişyariyek.
  • Asteng bike û li ser trafîka derketinê hişyar bike 173.255.233 [.]239 û ji *.trycloudflare[.]com mêvandar ji binesaziya avakirinê.
  • Li navnîşanên metadata-nimûneyê li daxwazên HTTP-ê yên dema sazkirinê bigere (169.254.170.2, 169.254.169.254) ku ji rêveberên pakêtan di CI de derdikeve.
  • Her bawername û nîşanekanên rola ewr ên ku ji xebatkarek ku guhertoyek bandor lê saz kiriye gihîştî bûn bizivirînin.
  • Berçavkirina pêşda saz kirin/piştî sazkirinê senaryoyên di nav we de komek girêdayîbûnê; çengelek çerxa jiyanê ku pelek skrîptê ya duyemîn dimeşîne hêjayî xwendinê ye.
  • Li ser xalên dawî yên Windows-ê, li xalên nû bigerin Delege bikeBicîh bike nirxên ku di bin de hatine nivîsandin ms-settings mifteya qalik-hilgirê - prîmîtîfa bilindahiyê ya ku ev barkêş bikar tîne û sînyalek pêbawer serbixwe ji navê pakêtê.
  • Pelên kilîtkirî pin bike û binirxîne, û skrîptên sazkirinê neçalak bike (npm sazkirin –skrîptên-îxbarkirinê) di CI de ku avahiya we wan hewce nake.
  • "Lêkolîna destûrdar" an jî redkirinên "baş" ên di hundirê skrîpteke sazkirinê de wekî nivîseke ne pêbawer bihesibîne, ne wekî sedemek ji bo destûrdayîna skrîptê.

Pakêtek ku niyetên baş di pexşan û daxwazan de radigihîne SÎSTEM Di kodê de divê li ser kodê were nirxandin.

amûrên-nermalava-berhevkirinê-ya-sca-amûran
Rîskên nermalava xwe bidin pêşanî, sererast bikin û ewle bikin
Hesabê xwe yê Belaş bistînin.
Qerta krediyê ne hewce ye.

Pêşvebirin û Radestkirina Nermalava Xwe Ewle Bike

bi Xygeni Product Suite re