TL; DR
Na Septemba 14, 2025, ndị nchọpụta chọpụtara na Shai Hulud, ikpuru nke na-emegharị onwe ya zoro n'ime npm ngwugwu, na-agbanwe mmelite ndabere oge niile ka ọ bụrụ nke zuru oke mbuso agha agbụ ọkọnọA hụrụ nke mbụ n'ime @ctrl/agba pere mpe Ngwugwu nke Daniel dos Santos Pereira dere, Shai-Hulud na-anakọta ihe nzuzo, na-ewepụ ha site na nchekwa na usoro ọrụ GitHub, ma na-ebipụtaghachi onwe ya n'ofe ndekọ ahụ site na iji akwụkwọ ikike ezuru. N'ime ụbọchị ole na ole, ọnụọgụ nke ngwugwu ndị butere ọrịa ahụ rịrị elu site na ọtụtụ ruo narị, na-akwado nke ahụ Shaihulud abụghị naanị trojan ọzọ kama ọ bụ ikpuru e mere ka ọ gbasaa na akpaghị aka n'ofe usoro npm.
Mmetụta: onye nrụpụta ọ bụla ma ọ bụ onye na-agba ọsọ CI ọ bụla nke na-etinye ngwugwu npm ọha na eze nọ n'ihe ize ndụ.
Omume ozugbo: igbochi ụdị ndị a maara, gbanwee gaa na ntinye faịlụ mkpọchi, tụgharịa npm na GitHub tokens, nyochaa usoro ọrụ, na nyochaa maka Indicators of Compromise (IoCs).
Kedu ihe mere?
The Mwakpo agbụ ọkọnọ Shai-Hulud na ngwugwu npm bụ otu n'ime ihe ndị kacha kpasuo iwe n'oge na-adịbeghị anya. N'adịghị ka trojan ndị dịpụrụ adịpụ, ikpuru a na-agwakọta Izu ohi nzere, iwepụ ihe nzacha akpaghị aka, na imegharị onwe onyeN'ihi ya, usoro oge ọrịa ahụ belatara site n'izu ruo naanị awa ole na ole.
Maka ndị otu DevOps, ihe mmụta ahụ doro anya: ọ bụrụ na nrụnye ọ bụla nwere ike ime koodu, mgbe ahụ mmelite ntụkwasị obi ọ bụla nwere ike ịbụ ebe mmebi.
Vektọ mbụ nwere ike ịnwe na akwụkwọ ikike ezubere iche
Nnyocha mbụ na-egosi na o yikarịrị ka mwakpo ahụ malitere na ezuru nzereDịka ọmụmaatụ, mkpọsa phishing na-eme npm login ma ọ bụ ihe mkpali MFA nwere ike ịnwe akara ngosi ndị nrụpụta. Ozugbo ndị mwakpo nwetara ọnọdụ mbụ ahụ, ikpuru ahụ gbasaa site n'itinye onwe ya na ngwugwu npm ma zuru ihe nzuzo ndị ọzọ site na:
- faịlụ nhazi npm dị ka
.npmrc, nke na-enwekarị ihe ngosi mbipụta. - Mgbanwe gburugburu ma hazie ya na GitHub PATs na CI/CD ihe nzuzo.
- Isi njedebe nke metadata igwe ojii (AWS, GCP, Azure) na-enye asambodo dị mkpirikpi maka mmegharị n'akụkụ.
Ya mere, izu ohi asambodo ghọrọ ebe mmalite. Site na ihe nrịbama npm dị irè na ihe nzuzo GitHub, Shai-Hulud nwere ike imegharị onwe ya n'ọtụtụ ngwugwu na ebe nchekwa na-enweghị mgbalị mmadụ ọzọ.
Mmetụta nke Mwakpo Shai-Hulud Supply Chain Mwakpo
Shai-Hulud ka na-arụ ọrụ taa. Ikpuru a na-eme ka usoro ihe mberede ahụ dị ngwa ngwa. Ihe were izu ole na ole na trojan na-eme ugbu a n'ime awa ole na ole. N'ihi ya, Mgbasa ahụ na-adị ngwa ngwa ma sie ike ijide. Ọ na-aga n'ihu site na:
- Izu ohi npm bipụta tokens na ihe nzuzo GitHub.
- Mbipụtaghachi onwe ya n'ime ngwugwu npm ndị ọzọ.
- Ịgbakwunye usoro ọrụ GitHub Actions ọjọọ maka ntachi obi.
Onye ọ metụtara:
A na-ekpughe otu ọ bụla nke na-etinye ngwugwu npm ọha. Ọzọkwa, ndị mmepe nwere ihe nchekwa npm ma ọ bụ GitHub na-eche nnukwu ihe egwu ihu. Ndị na-agba ọsọ CI nke na-eji ihe nzuzo sara mbara nwekwara ike ịdaba.
Ihe ize ndụ azụmahịa
Mmetụta azụmaahịa na-eto ngwa ngwa. Ihe nrịbama ndị e zuru nwere ike ibute iweghara akaụntụ, izu ohi ngwugwu, na ọbụna iji igwe ojii eme ihe n'ụzọ na-ezighị ezi. Na mgbakwunye, ịnọgidesi ike na usoro ọrụ GitHub na-eme ka ọ sie ike ihicha. Ya mere, ọ na-esiri ike ihicha., otu ndị otu ga-ewere Shai-Hulud dị ka ihe na-eme n'oge na-adịghị anya, ọ bụghị ihe mechiri emechi.
Otu Shai-Hulud Supply Chain Wakporo Si arụ ọrụ na ngwugwu npm
Ebumnuche na ebumnuche nke onye mwakpo
Mgbasa ozi ahụ na-eme ka ihe atọ dị mma:
- Ebumnobi mbụ bụ zuru asambodo n'ọtụtụ site na laptọọpụ ndị nrụpụta na ndị na-agba ọsọ CI. Nke a gụnyere tokens npm publish, tokens GitHub, na nzere ígwé ojii. N'ezie, ọtụtụ nyocha na-akwado nchịkọta nzuzo usoro, dịka ịgba TruffleHog na ịjụ ajụjụ na njedebe metadata ígwé ojii.
- Ebumnobi nke abụọ bụ ime gbasaa na akpaghị aka site n'iji ikike mbipụta nke ndị na-elekọta ndị e kewapụrụ n'ihe ize ndụ eme ihe n'ụzọ na-ezighị ezi. N'ihi ya, otu ebe na-agbasa ngwa ngwa ruo ọtụtụ, ebe ọ bụ na ụdị ọhụrụ nke ngwugwu ndị ọzọ na-ebute ọrịa na-apụta na-enweghị mgbalị mmadụ ọzọ.
- Ebumnobi nke atọ bụ ime nọgide na-aga ma na-awụpụ mmiri n'ụzọ a pụrụ ịdabere na ya site na akụrụngwa GitHub. Ndị mwakpo na-emepụta ebe nchekwa ọha nke akpọrọ "Shai-Hulud" nke nwere ntọala abụọ64 data.json, na mgbakwunye ha na-akụ usoro ọrụ nke na-ahazi usoro ${{ toJSON(ihe nzuzo) }} ma tinye ya na njikọ weebụ kwụ ọtọ.
Uru a ga-enweta gụnyere ohere ogologo oge ịnweta ndekọ na koodu isi mmalite, mmegharị ngwa ngwa n'akụkụ akaụntụ igwe ojii, na nhọrọ iji ngwa agha mee ka usoro ọkọnọ ahụ dịkwuo mma. Akụkọ ọha na eze na-egosi na e tinyere ihe nchekwa nkeonwe n'ihu ọha na "-mbugharị" mgbakwunye, nke na-eme ka ikpughe data na ọsọ dịkwuo elu
N'ime Shai-Hulud Payload: ngwugwu.js Ngwugwu npm
Shai-Hulud na-arụ ọrụ dị ka buru ibu, ejiri Webpack kee ya ma kpụọ ya nke ukwuu Faịlụ JavaScript (ngwugwu.js, ihe dị ka 3–3.7 MB) nke na-arụ ọrụ site na nrụnye mgbe etinyere banye ngwugwu.jsonN'ihi ya,, Ntinye ọ bụla na-akpali ibu ọrụ ahụ na akpaghị aka. Nhazi a na-ezochi ihe njirimara, na-agbakọta usoro njikwa, ma na-akwali ihe niile n'ime otu ihe ochie nke na-arụ ọrụ n'oge nrụnye. Ndị nyocha na-akwado mgbe niile na njikọta Webpack, nha faịlụ pụrụ iche, na mmejuputa oge nrụnye.
Ị ga-ahụ ihe atụ ndị na-egosi na ihe ndị na-egbochi mmadụ ime ihe ọjọọ na ihe ndị na-eme ka mmadụ ghara ime ihe ọjọọ:
- Eserese modulu pere mpe yana NJ modulu ọnụọgụgụ, okwu ndị dị obere, na usoro njikwa dị larịị., Nhazi a na-eme ka nyocha aka sie ike nke ukwuu.
- Izochi eriri site na akwa base64 na ndị enyemaka owuwu. Dịka ọmụmaatụ, Usoro nhazi na nhazi base64 ugboro ugboro na-apụtakarị n'akụkụ usoro mwepụ ihe.
- Nzipu ike site eval-ụdị ụkpụrụ na ahụ ọrụ emepụtara, si otú a na-eme ka koodu nwee ike ịgbanwe omume n'oge ọrụ.
- Nzacha OS ịhọrọ ụdị Linux na macOS kachasị na laptọọpụ ndị na-agba ọsọ CI na ndị mmepe.
Site n'akụkụ ọrụ, ngwugwu ahụ bụ modular. Writeups na-akọwa modulu maka nchọpụta OS, sistemụ faịlụ na nyocha nzuzo git, ohere SDK ígwé ojii, ọrụ GitHub API, na injin mgbasa ozi nke na-edezi ngwugwu ndị ọzọ onye na-elekọta nwere. N'ezie, StepSecurity na ReversingLabs na-egosipụta ọrụ nke na-emelite ngwugwu na akpaghị aka na njikọ ọjọọ.
Mmezu Oge Ntinye na Shai-Hulud: Otu Ngwugwu npm si akpalite Worm
Mwakpo ahụ na-amalite mgbe postinstall na-agba ọsọ node ngwugwu.js. N'oge a, edemede ahụ na-amalite ma na-ekpughe ọnọdụ ọrụ na ebe nchekwa, na-edozi usoro maka ọrụ zuru oke nke ikpuru ahụ.
Nchọpụta na owuwe ihe ubi
- Payload dumps process.env ma na-enyocha faịlụ mpaghara maka ihe nzuzo entropy dị elu na prefixes tokens. Na mgbakwunye, ọ na-agbasa mkpuchi site na iji TruffleHog.
- Ọ na-ajụ ajụjụ maka njedebe metadata igwe ojii iji chịkọta nzere ndị na-adịru nwa oge. Dị ka ọmụmaatụ, oku na-aga
169.254.169.254na AWS ma ọ bụmetadata.google.internalna GCP na-apụtakarị na ndị ọbịa nwere ọrịa. - N'ihi ya, Asambodo ọ bụla achọtara ga-adị mfe iji bipụta ngwugwu npm ọhụrụ ma ọ bụ kwalite usoro ọrụ GitHub.
Exfiltration
- Ikpuru ahụ na-emepụta ebe nchekwa GitHub ọhụrụ aha ya bụ Shai Hulud ma dee koodu nke nwere ntọala abụọ64
data.jsonyana nkọwa ikpo okwu, ebe a na-ekpofu ihe dị n'ime gburugburu ebe obibi, na ihe nzuzo. Dịka a pụrụ ịhụ, omume mkpọtụ a dị mfe ịchọpụta ma ọ bụrụ na ndị na-agbachitere maara ebe ha ga-ele anya. - Ọ na-akụkwa usoro ọrụ GitHub Actions, ọtụtụ mgbe n'alaka aha ya bụ shai-hulud, nke na-ahazi usoro
${{ toJSON(secrets) }}ma tinye data ahụ na njikọ weebụ na-anaghị agbanwe agbanwe. Ọzọkwa, usoro ọrụ a na-aga n'ihu ruo mgbe mmadụ wepụrụ ya nke ọma.
Mgbasa Ozi
- Site na ihe nrịbama npm ọ bụla achọpụtara, ibu ọrụ ahụ na-akọwapụta ngwugwu niile nke onye na-elekọta ihe ahụ mebiri emebi nwere. Mgbe ahụ, ọ na-ewepụta tarball ọ bụla, na-etinye bundle.js na ntinye postinstall, ma na-ebipụtaghachi ngwugwu ahụ.
- N'ihi ya, ọtụtụ ngwugwu ndị butere ọrịa nwere ike ịpụta n'ime awa ole na ole, na-amụba radius mgbawa ahụ n'ofe usoro ahụ dum.
Nkwụsi ike na ikpughe
Ikpuru ahụ na-eme ka usoro ọrụ ọjọọ dị ndụ, n'ọtụtụ oge, na-atụgharị ebe nchekwa nkeonwe nye ọha na eze site na "-mbugharị" Mgbakwunye. N'ozuzu ya, nke a na-eme ka onye na-awakpo ahụ nwee ike ịnọgide na-enwe ọnọdụ ma na-eme ka mwepụta data dịkwuo elu.
Ihe nchọpụta isi
Ojiji a na-adịghị ahụkebe ${{ toJSON(secrets) }} na Actions workflows dị ụkọ. Ya mere, Ndị otu kwesịrị iwere ya dị ka ihe ngosi dị elu n'oge ịchụ nta.
Usoro ọrụ dị mkpa ị kwesịrị ịchọ
Ojiji a na-adịghị ahụkebe na JSON (ihe nzuzo) na Actions bụ ihe ngosi dị elu na ihe omume a.
Koodu pseudo nke mgbasa ozi dị elu (nchekwa, nkọwa)
Ndị nyocha hụrụ mgbanwe a n'ọtụtụ, nke na-akọwa mmụba ngwa ngwa site na ọtụtụ ruo ọtụtụ narị ngwugwu ndị butere ọrịa.
Ihe kpatara nke a ji bụrụ ikpuru na usoro ihe omume ngwugwu
Ikpuru bụ malware nke na-agbasa n'onwe ya n'achọghị usoro onye ọrụ aka n'oge ọ bụla. N'ime sistemụ arụmọrụ, ikpuru na-ejikarị nsogbu netwọk eme ihe iji si n'otu igwe gaa na nke ọzọ. N'ụzọ dị iche, Shai-Hulud na-arụ ọrụ n'ime ndekọ npm. Ụzọ ya dị irè bụ site na iji asambodo eme ihe.
Ikpuru ahụ na-eji ihe nrịbama npm e zuru ezu eme ihe. Ozugbo o nwetara asambodo ziri ezi, ọ na-ebipụtaghachi ụdị ndị butere ọrịa n'okpuru ngwugwu ndị ọzọ nke onye na-elekọta otu ihe ahụ nwere. Emesịa, ndị mmepe na-amaghị ihe ma ọ bụ ndị na-agba ọsọ CI na-etinye ngwugwu ndị ahụ, usoro ahụ na-emegharịkwa.
Maka nke a, ndị nyocha nchekwa, gụnyere Ọchịchịrị Ọchịchịrị, kewaa Shai-Hulud dị ka ikpuru na-emegharị onwe ya kama ịbụ trojan nkịtị ma ọ bụ ihe mere ka a ghara ide ihe n'ụzọ ziri ezi. Ihe dị iche dị mkpa: trojan na-emebi otu onye ọbịa, mana ikpuru na-eme ka mmetụta ya dịkwuo elu na gburugburu ebe obibi.
Mpempe akwụkwọ aghụghọ "Otu o si arụ ọrụ"
Iji chịkọta usoro ndụ Shai-Hulud, lee ihe ọjọọcisNkọwa nke usoro ya bụ isi:
- Ngwugwu nwere nrụnye mgbe etinyere etinyere, na
bundle.jsna-eme. - Ihe na-agbanwe agbanwe na-eme ka ihe dị iche iche dị na payload dumps, na-enyocha faịlụ na akụkọ ihe mere eme git, na-agba ọsọ TruffleHog, ma jụọ ajụjụ gbasara ọrụ metadata igwe ojii. N'ihi ya, ihe nzuzo ọ bụla achọtara ga-abara uru ozugbo.
- Mkpọpụta ihe na-eme n'ụzọ abụọ: nke mbụ, site n'ịmepụta ebe nchekwa ọha nke aha ya bụ repo Shai Hulud nwere koodu ntọala abụọ nke 64-encoded
data.jsonnke abụọ, site n'ịkụnye usoro ọrụ GitHub Actions nke na-ebipụta${{ toJSON(secrets) }}na ntanetị weebụ. - Site na iji ihe ngosi npm ọ bụla e zuru, ikpuru ahụ na-ebipụtaghachi ngwugwu ndị ọzọ niile nke onye na-elekọta ihe mberede nwere site na otu nko ọjọọ ahụ. N'ụzọ dị otu a, ọrịa ahụ na-amụba ngwa ngwa.
- N'ikpeazụ, onye na-awakpo ahụ nwere ihe nzuzo ndị ọzọ, ngwugwu ndị ọzọ iji gbasaa, na nnọgidesi ike n'ime akaụntụ GitHub na ebe nchekwa.
Otu esi ezere ụdị mwakpo a, ihe fọrọ nke nta ka ọ bụrụ
Shai-Hulud bụ oku ịkpọte mmadụ. Ikpuru nke na-ezu ohi ihe nrịbama ma bipụtaghachi onwe ya abụghị ihe egwu n'ọdịnihu, ọ dị ndụ n'ime gburugburu ebe obibi ngwugwu npm taa. Iji gbochie ụdị a mbuso agha agbụ ọkọnọ, otu chọrọ njikwa ndị a pụrụ ime mmemme ha, akpaaka, ma tinye ha n'ọrụ ozugbo na CI/CD pipelines. Ndị a bụ otu ihe nchebe ị nwere ike itinye na ya Xygeni.
Kwụsị ihe ochie na-adịghị mma n'ọnụ ụzọ ámá
I kwesịrị inyocha ngwugwu npm na tarballs tupu ha erute ndị mmepe ma ọ bụ ọrụ CI. bundle.js faịlụ, a na-enyo enyo mgbe nrụnye gasịrị hooks, na ihe nrịbama obfuscation niile na-eje ozi dị ka ọkọlọtọ uhie mbụ. Ọzọkwa, ịmanye oge oyi na ụdị ndị a kpọchiri akpọchi na pipelines na-egbochi mwepụta ọhụrụ, nke a na-enyochaghị nke ọma ka a ghara iji ya na akpaghị aka.
Ike CI/CD site na ndabara
Guardrails in CI/CD dị oke mkpa. Ha na-ajụ njikọta ma ọ bụ ntinye nke na-ewebata edemede ọhụrụ ma ọ bụ binary. N'otu oge ahụ, ha na-egbochi usoro ọrụ nke na-eme ka ihe nzuzo dị n'usoro ma ọ bụ na-anwa itinye ozi mpụga. Ndị otu kwesịkwara ịchọ nrụnye naanị faịlụ mkpọchi (npm ci) n'akụkụ niile pipelineyabụ, ihe ndị a na-eji dabere na ya na-anọgide na-emegharị ma dịkwa nchebe.
Belata radius mgbawa nke akara ngosi
Ihe nzuzo agaghị aghọ otu ebe ọdịda. Na-enyocha koodu, nhazi, na pipeline mmepụta maka asambodo ekpughereA ga-enyocha akara ngosi ndị ahụ nke ọma, ma ọ bụrụ na ha dị obere oge, ma tụgharịa ha na akpaghị aka mgbe achọpụtara mkpughe. Dịka iwu si dị, were akara ngosi ọ bụla ejiri na onye na-akwado ha nke mere ihe a na-enyo enyo mgbe nrụnye gasịrị dị ka ihe e mebiri emebi.
Lee omume ikpuru n'oge
Nchọpụta anomaly dị mkpa. Dịka ọmụmaatụ, mmụba mberede na npm na-ebipụta ihe omume, usoro ọrụ ọhụrụ na-apụta n'enweghị ihe kpatara ya, ma ọ bụ ebe nchekwa ọha ọhụrụ juputara na faịlụ dị iche iche nwere ike igosi ọrụ ikpuru. Ya mere, ndị otu kwesịrị ịkpọlite ndọ aka ná ntị ngwa ngwa ma kewapụ ndị na-elekọta ma ọ bụ ndị na-agba ọsọ ọ bụla na-egosi ihe ịrịba ama ịdọ aka ná ntị ndị a.
Dozie ya ngwa ngwa n'emebighị ihe owuwu ya
Ọsọ na nchekwa ga-agarịrị ọnụ. pull requests nwere ike iji ụdị ndị a nwalere dochie ngwugwu npm ndị mebiri emebi. Na mgbakwunye, nzaghachi na nrigbu Nnyocha na-eme ka mmelite ndị a dị obere ma kwụsie ike. N'ikpeazụ, wughachi ndị na-agba ọsọ CI ndị metụtara site na onyonyo dị ọcha ozugbo egosipụtara na ha, na-egbochi mwakpo ahụ ịgbasa ọzọ.
Ihe ngosi nke nkwekọrịta (IoCs)
Mgbe a na-enyocha Shai-Hulud, ndị otu kwesịrị ileba anya maka ha abụọ. IoC ndị na-anaghị agbanwe agbanwe na faịlụ na IoCs omume in pipelines. N'otu aka ahụ, ihe mgbaàmà ndị a na-enyere aka ịchọpụta ọrịa n'oge ma meghachi omume tupu ikpuru agbasaa ọzọ.
IoC ndị na-anaghị agbanwe agbanwe
A hụrụ na nchịkọta SHA-256 ndị a dabara bundle.js ihe atụ:
- 46faab8ab153fae6e80e7cca38eab363075bb524edd79e42269217a083628f09
- 81d2a004a1bca6ef87a1caf7d0e0b355ad1764238e40ff6d1b1cb77ad4f595c3
- dc67467a39b70d1cd4c1f7f7a459b35058163592f4a9e8fb4dffcbba98ef210c
Ọzọkwa, lezie anya maka usoro ndị a na-emegharị ugboro ugboro:
- A
bundle.jsna mgbọrọgwụ ngwugwu. "postinstall": "node bundle.js"imepackage.json.- Ụlọ nkwakọba ihe akpọrọ aha Shai Hulud.
- Ọrụ GitHub na-arụ ọrụ nke nwere usoro ọrụ dị iche iche
${{ toJSON(secrets) }}.
IoCs omume
E wezụga mbinye aka faịlụ, ọrụ ikpuru na-ekpughe onwe ya site na omume. Dịka ọmụmaatụ:
- Mwakpo mberede nke npm bipụtara ihe omume sitere n'aka otu onye nlekọta.
- Usoro ọrụ ọhụrụ nke na-akwaga data na njedebe mpụga.
- Arịrịọ POST na-apụ apụ sitere n'aka ndị na-agba ọsọ CI.
- Emepụtara ebe nchekwa ọha na eze n'oge na-adịbeghị anya site na iji blọb ndị e tinyere koodu.
Ịchụ nta ngwa ngwa
Mmechi: Ihe mmụta sitere na Shai-Hulud
The Mwakpo agbụ ụgbọ mmiri Sha-Hulud N'ime ngwugwu npm, a na-egosi etu usoro ọkọnọ ngwanrọ nke oge a si dị njọ. Ikpuru a mere ihe karịrị itinye koodu ọjọọ. O zuru ihe nrịbama, zigara data, wee bipụtaghachi onwe ya na akpaghị aka. N'ihi nke a, mwakpo ahụ gbasaara n'ime awa ole na ole kama izu ole na ole.
Maka ndị mmepe na ndị otu DevOps, ihe mmụta ndị a doro anya:
- Ntinye ọ bụla na-agba koodu. Ọbụna ngwugwu npm a na-ahụkarị nwere ike izochi ikpuru postinstall.
- Ihe nrịbama ọ bụla nwere uru dị elu. Ozugbo e zuru ya, enwere ike iji ya gbasaa malware ọzọ.
- Kwa pipeline chọrọ nlele. -enweghị guardrails na ntụkwasị obi, usoro ọrụ, na ihe nzuzo, otu nkwekọrịta nwere ike ibute mmepụta ngwa ngwa.
Ya mere, ịkwụsị mwakpo dịka Shai-Hulud chọrọ njikwa ndị dị mfe ma dịkwa mfe iji. Ndị otu kwesịrị inyocha ngwugwu npm tupu nrụnye, jiri ntọala faịlụ mkpọchi, chọpụta ọrụ mbipụta dị iche iche, ma mee ka akara ndị ahụ dị mkpụmkpụ. Usoro ndị a abụghịzi nhọrọ. Kama, ha bụ ntọala nke iguzogide n'oge a. pipelines.
Na Xygeni, anyị na-ahụ mwakpo nke usoro ọkọnọ Shai-Hulud dị ka ịdọ aka ná ntị maka usoro ihe niile mepere emepe. Ụzọ na-adịgide adịgide bụ iweta nchekwa nke usoro ọkọnọ ozugbo na usoro mmepe, ebe koodu, ngwugwu npm, na pipelines jikọọ.
N'okpuru ebe a bụ ndepụta zuru oke nke ngwugwu npm na ụdị ndị akọwara dị ka ndị e mebiri emebi na Shai-Hulud. Jiri ya lelee faịlụ mkpọchi gị, ndekọ aha gị, na CI gị. pipelines maka ikpughe.
Ndepụta nke ngwugwu ndị e mebiworo
📦 Nlele nke ngwugwu npm nke a na-akpọ Compromised npm
| Aha ngwugwu | version | Bipụta Datebọchị |
|---|---|---|
| json-iwu-engine-dị mfe | 0.2.1 | 2025-09-14T17:58:51.203Z |
| ụgbọelu | 0.8.8 | 2025-09-14T18:35:07.600Z |
| mcp-ihe ọmụma-graph | 1.2.1 | 2025-09-14T18:35:09.494Z |
| isi ụgbọelu | 0.3.1 | 2025-09-14T18:35:09.521Z |
| ọnụ ụzọ mgbapụ | 0.0.2 | 2025-09-14T18:35:09.651Z |
| tvi-cli | 0.1.5 | 2025-09-14T18:35:10.996Z |
| @thangved/callback-window | 1.1.4 | 2025-09-14T20:31:38.479Z |
| @tnf-dev/api | 1.0.8 | 2025-09-14T20:31:39.547Z |
| @tnf-dev/js | 1.0.8 | 2025-09-14T20:31:41.251Z |
| @tnf-dev/mui | 1.0.8 | 2025-09-14T20:31:41.259Z |
| @tnf-dev/isi | 1.0.8 | 2025-09-14T20:31:42.728Z |
| @teselagen/tebụl mmeghachi omume | 6.10.20 | 2025-09-14T20:37:08.597Z |
| @hestjs/ngosi | 0.1.2 | 2025-09-14T20:45:52.348Z |
| @nexe/eslint-config | 0.1.1 | 2025-09-14T20:45:53.625Z |
| @hestjs/eslint-config | 0.1.2 | 2025-09-14T20:45:55.044Z |
| @nexe/onye njikwa nhazi | 0.1.1 | 2025-09-14T20:45:55.066Z |
| @nexe/onye na-edekọ ihe | 0.1.3 | 2025-09-14T20:45:55.170Z |
| @hestjs/onye na-ede ihe | 0.1.6 | 2025-09-14T20:45:55.197Z |
| @hestjs/nkwado | 0.1.6 | 2025-09-14T20:45:55.595Z |
| @hestjs/isi | 0.2.1 | 2025-09-14T20:45:55.888Z |
➡️ Lee ndepụta zuru oke nke ngwugwu ndị e mebiri emebi
| Aha ngwugwu | version | Bipụta Datebọchị |
|---|---|---|
| json-iwu-engine-dị mfe | 0.2.1 | 2025-09-14T17:58:51.203Z |
| ụgbọelu | 0.8.8 | 2025-09-14T18:35:07.600Z |
| mcp-ihe ọmụma-graph | 1.2.1 | 2025-09-14T18:35:09.494Z |
| isi ụgbọelu | 0.3.1 | 2025-09-14T18:35:09.521Z |
| ọnụ ụzọ mgbapụ | 0.0.2 | 2025-09-14T18:35:09.651Z |
| tvi-cli | 0.1.5 | 2025-09-14T18:35:10.996Z |
| @thangved/callback-window | 1.1.4 | 2025-09-14T20:31:38.479Z |
| @tnf-dev/api | 1.0.8 | 2025-09-14T20:31:39.547Z |
| @tnf-dev/js | 1.0.8 | 2025-09-14T20:31:41.251Z |
| @tnf-dev/mui | 1.0.8 | 2025-09-14T20:31:41.259Z |
| @tnf-dev/isi | 1.0.8 | 2025-09-14T20:31:42.728Z |
| @teselagen/tebụl mmeghachi omume | 6.10.20 | 2025-09-14T20:37:08.597Z |
| @hestjs/ngosi | 0.1.2 | 2025-09-14T20:45:52.348Z |
| @nexe/eslint-config | 0.1.1 | 2025-09-14T20:45:53.625Z |
| @hestjs/eslint-config | 0.1.2 | 2025-09-14T20:45:55.044Z |
| @nexe/onye njikwa nhazi | 0.1.1 | 2025-09-14T20:45:55.066Z |
| @nexe/onye na-edekọ ihe | 0.1.3 | 2025-09-14T20:45:55.170Z |
| @hestjs/onye na-ede ihe | 0.1.6 | 2025-09-14T20:45:55.197Z |
| @hestjs/nkwado | 0.1.6 | 2025-09-14T20:45:55.595Z |
| @hestjs/isi | 0.2.1 | 2025-09-14T20:45:55.888Z |
| @hestjs/cqrs | 0.1.6 | 2025-09-14T20:45:55.966Z |
| @hestjs/scalar | 0.1.7 | 2025-09-14T20:45:56.386Z |
| ng2-file-bulite | 7.0.3 | 2025-09-15T02:44:29.555Z |
| onye njikwa ọkwa capacitor | 0.0.2 | 2025-09-15T04:54:48.431Z |
| capacitor-plugin-vonage | 1.0.2 | 2025-09-15T04:54:48.501Z |
| capacitor-plugin-healthapp | 0.0.2 | 2025-09-15T04:54:48.704Z |
| ikike capacitorandroid | 0.0.4 | 2025-09-15T04:54:48.753Z |
| voip-callkit | 1.0.2 | 2025-09-15T04:54:49.223Z |
| capacitor-plugin-ihealth | 1.1.8 | 2025-09-15T04:55:08.113Z |
| @art-ws/common | 2.0.22 | 2025-09-15T05:21:15.411Z |
| @art-ws/config-eslint | 2.0.4 | 2025-09-15T05:21:17.199Z |
| ngx-ws | 1.1.5 | 2025-09-15T05:21:17.514Z |
| @art-ws/slf | 2.0.15 | 2025-09-15T05:21:17.524Z |
| @art-ws/http-server | 2.0.21 | 2025-09-15T05:21:17.745Z |
| pm2-gelf-json | 1.0.4 | 2025-09-15T05:21:18.413Z |
| @art-ws/di | 2.0.28 | 2025-09-15T05:21:18.488Z |
| @art-ws/di-node | 2.0.13 | 2025-09-15T05:21:18.849Z |
| @art-ws/config-ts | 2.0.7 | 2025-09-15T05:21:19.408Z |
| @art-ws/db-context | 2.0.21 | 2025-09-15T05:21:19.814Z |
| @art-ws/openapi | 0.1.9 | 2025-09-15T05:21:19.969Z |
| @art-ws/ngwa weebụ | 1.0.3 | 2025-09-15T05:21:20.383Z |
| @art-ws/ssl-info | 1.0.9 | 2025-09-15T05:21:20.927Z |




