GitHub Advisory malware sweep - 2026-09-08/09 (coordinated `sonner` typosquat trio, Baileys scope hijacks, `rojo-rbx` Windows persistence, dep-confusion probes and remote-code loaders)
Between 2026-09-08 and 2026-09-09 UTC GHSA published ~25 npm/PyPI malware advisories: a coordinated sonner typosquat trio (sonmors/gloggo/file-type-detector) with a PNG-steganography loader gated on a fake isSign(); three @*/baileys WhatsApp scope hijacks; a rojo-rbx Roblox typosquat with Windows Run-key persistence; plus dep-confusion probes and remote-code loaders.
- Incident type
- Advisory sweep. A dated batch of GitHub Advisory Database malware entries collected together. A sweep mixes kinds - typosquats, dependency-confusion probes, boilerplate takedowns with no published analysis, and occasionally real payloads - and its severity reflects the worst confirmed item, not the batch as a whole.
- Detected by
- GitHub Advisory Database · OpenSSF malicious-packages · OpenSSF Package Analysis · amazon-inspector
- Also known as
- 2026-09-09 GHSA npm/PyPI sweep · sonmors gloggo file-type-detector coordinated sonner typosquat · rojo-rbx Roblox Windows Run-key persistence · baileys scope hijack wave 2026-09-09
- Ecosystems
- npmPyPI
- Packages tracked
- 25
What happened
Between roughly 2026-09-08 00:00 UTC and 2026-09-09 12:00 UTC, GitHub Advisory Database published ~25 new npm and PyPI malware advisories. Unlike the 2026-09-07/08 wave (which was dominated by corporate-namespace dep-confusion probes hitting Air Canada / Medisend / Coinbase / Swisscom and many others), this window is dominated by analysed payloads: typosquats, remote-code loaders, an OS-level persistence chain, and a coordinated three-package cluster.
Cluster A — Coordinated sonner typosquat trio
The most operationally interesting drop of the day is a three-package coordinated attack against the very-widely-used sonner React toast library:
| Package | GHSA | Role |
|---|---|---|
sonmors | GHSA-vp67-pvcp-4j8j | Typosquat of sonner; spoofs sonner's package.json identity; require('gloggo') at load time |
gloggo | GHSA-wmgg-555m-p7h6 | Typosquat of glogg (gulpjs); gates hidden loader on isSign('favorite','gloggo',12467) from file-type-detector |
file-type-detector | GHSA-cjhh-g8v5-hg5g | Typosquat of file-type-checker; the concealed isSign() function reads PNG files, extracts payloads, writes them to sibling packages under node_modules |
All three carry the false attribution "Blockvora Team" / team@blockvora.com. The load-time chain is deliberately obfuscated: sonmors looks like a working toast library, gloggo looks like a working logger, and file-type-detector looks like a MIME-sniffing utility. Only when all three are present, and only when gloggo calls isSign(), does the malicious loader activate and extract the payload from PNG bytes.
The PNG-steganography step is the reason a static .js-only scan will not find the payload. Yara rules that trigger on eval(), Function(), child_process, or a known malicious URL will miss it entirely - the URL and shell commands only exist inside decoded PNG bytes, and only after all three packages line up.
Cluster B — WhatsApp Baileys scope hijacks
Three more Baileys-namespace scope hijacks landed (@vallensofficial/baileys, @versacode/baileys, @haimiya/baileys), all with the standard full-compromise GHSA boilerplate ("any computer that has this package installed or running should be considered fully compromised"). This continues the pattern from kiki-baileys (2026-09-08 sweep) and WhiskeySAML/baileys earlier in the year. Baileys (the real one, @whiskeysockets/baileys) is the de-facto unofficial WhatsApp Web API library for Node - a fertile lookalike target.
Cluster C — Roblox / gaming ecosystem malware
rojo-rbx@<=1.4.3 (GHSA-p55w-6rww-5frg) impersonates the well-known Rojo Roblox tooling project. On Windows, scripts/install.js:
- Downloads a VBScript from
https://l81.me/updater.vbs - Writes it to
%APPDATA%\Rojo\rojo-sync.vbs - Adds
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\RojoClientSyncso the VBS re-launches on every login - Provides no actual Rojo functionality
Unlike the OAST / webhook.site probes above, this one commits to persistence on the victim host - a genuine backdoor rather than reconnaissance. The real Rojo tool is distributed as a binary through GitHub releases, not through npm, so any npm-based "Rojo" install is fake by definition.
open-item-validator@1.0.3/1.0.5 (GHSA-jfq9-9hf7-gr4x) is a game-adjacent name grab (declared homepage game.spawnrealm.com, actual C2 itemx.servegame.com:8888 on the No-IP dynamic DNS) that spawns a persistent background Node process, polls /api/x-realtime, and new Function()-executes the returned code. The daemon survives its parent process exit, so a single dev-machine npm install gives the operator ongoing RCE.
Cluster D — Corporate-namespace dep-confusion probes
Same pattern as yesterday's Cluster A/B/C but with per-target IOCs published:
unifi-credential-server@99.0.0(GHSA-9rgc-h7qj-q8w3) - Ubiquiti UniFi internal-build target; hex-encoded DNS labels to<payload>.oast.metwilio-functions@99.99.99/99.99.100(GHSA-73g6-c624-22hf) - Twilio SDK impersonator; POST towebhook.site/42ce0f0e-a0a0-41b5-b157-1c0f918e064f, DNS fallback2b22ede784d5.oast.fun@umschool/analytics@999.0.0-999.0.4(GHSA-2qmq-f9mj-rwcj) - Umschool corporate scope; GET toakko.requestcatcher.com/dep-confusionpy-devoli-common@999.999.999(PyPI, GHSA-g8qj-vfr2-9w5c) - Devoli target on PyPI; boilerplate-flagged, no published payload
The sentinel-version (99.x, 99.99.x, 999.x, 999.999.x) pattern is the fingerprint - real internal packages don't live at these versions, but they beat any semver range in resolution when a bare name accidentally resolves against public npm.
Cluster E — Webhook / OAST reconnaissance beacons
@yongot/canary-mcp-isolation@1.0.1and@yongot/canary-mcp-test@2.0.0/3.0.0/4.0.0- same operator; sends hostname +id+ GCP metadata probes (169.254.169.254,metadata.google.internal) towebhook.site/b76376f8-118e-44f1-a5ee-8a73f55b137b. Thecanary-mcp-*naming appears aimed at MCP (Model Context Protocol) / AI-agent servers, another corporate scope shapealloy-graphql@1.0.1- preinstall reads/etc/passwd+/etc/hosts, harvests DNS servers and fullpackage.json, POSTs to a Burp Collaborator subdomain (*.oastify.com). This is the deepest reconnaissance in the batch@aspect-adv-ui/consent-manager@2.4.0/2.4.1- masquerades as a GDPR/CCPA consent manager; postinstall GET towebhook.site/kapper
Cluster F — Remote-code-loader droppers
Five packages that fetch code over the network and immediately execute it:
tailwind-aspect-styles@<=0.4.2—http://23.27.245.100/index.jsover plain HTTP; writes./inout.js,require()s ittailwindcss-aspectratio-styles@0.3.4/0.3.5—tailwindlan.onlineremote JS; almost certainly the same operator as the previous line, both impersonating@tailwindcss/aspect-ratioselfcerts@1.0.0— hides a base64 C2 URL inside a fakesample/cert.pem, fetcheshttp://144.172.104.211/settings/privacy.php, pipes it into detachedpython3. Cross-language execution is unusual for npm malwarepunypump@1.2.2/1.2.4/1.2.5— fetches AES-256-CBC ciphertext fromjsonkeeper.com/b/V6NBX, decrypts with hardcoded key,eval()s the result. Disguised as aconsole-browserifyshimbx-ui-view@1.0.0— self-referential dependency:package.jsondeclares its own package name with an HTTPS URL value pointing tohttps://package-access.pages.dev/bx-ui-view. npm downloads and runs whatever the pages.dev URL currently serves at install time
Cluster G — Credential theft / hardcoded backdoor
toru-ultimate@1.0.0 (GHSA-jg37-3w86-3rx2) is a Facebook credential harvester. The loginViaAPI() function forwards user-supplied email + password + 2FA Base32 secret to https://minhdong.site/api/v1/facebook/login_ios, and the package pulls its own runtime code from an unpinned GitHub branch (VangBanLaNhat/fca-unofficial) - so the branch owner can inject fresh code any time.
vinzz-wcli@<=1.0.1 (GHSA-xv3f-69vw-grmg) is a WhatsApp CLI framework whose plugin config hardcodes a specific WhatsApp JID (6285185667890@s.whatsapp.net) as an authorised owner. Any user who pairs their own phone through the CLI has given the JID owner silent access to a cmd plugin (child_process.exec) and an eval plugin - full RCE with the installer's privileges over WhatsApp.
Cluster H — Destructive package
express-session-timer@1.0.0-1.0.16 (GHSA-xf4h-cmpp-qfvf) is unusual for the batch: no exfil, no C2, no persistence - just sabotage. Approximately 18 seconds after require('express-session-timer'), it recursively removes <cwd>/src and kills Node / PM2 processes. Its declared dependency express-timer@^0.0.1-security pins to the npm security-hold placeholder version, another red flag.
Cluster I — Amazon Inspector / OpenSSF boilerplate takedown
react-hook-doms@<=5.3.1 (GHSA-hj8f-64m3-wrpj) is amazon-inspector-flagged with only a source hash and no published analysis. Assume the full-compromise GHSA boilerplate applies until independent per-package analysis surfaces.
Distinction from the parallel 2026-09-08 sweep
Yesterday's multi-2026-09-08-ghsa-malware-sweep covered the sprawling corporate-namespace dep-confusion probe wave (Air Canada, Medisend, OPAP, Optimizely/Fastly, MATLAB/Azure DevOps, SimpliSafe, Tidal, PayPal, Twilio, Afterpay, Ecobee, Karapace, Glia, Jobber, Feishu, BMC, and more) with the oast.online + 5.189.159.252 shared-infrastructure Cluster A. Today's window is smaller and more analytical - each cluster comes with published IOCs and enough detail to identify per-cluster mitigation. Some Sept-8 corporate-namespace probes may still trickle through the GHSA pipeline today; check the parallel record for those.
Registry state
All packages listed below are flagged as malware on npm / PyPI and quarantined. Private mirrors (Verdaccio, Artifactory, Nexus) that cached tarballs before quarantine will keep serving them - explicit deny-listing of every name below plus the @vallensofficial/, @versacode/, @haimiya/, @yongot/, @aspect-adv-ui/, and @umschool/ scopes is the durable mitigation.
Discovery credits
GitHub Advisory Database, OpenSSF malicious-packages, OpenSSF Package Analysis, amazon-inspector. Per-package IOC details (URLs, IPs, hashes, hardcoded JIDs, webhook tokens) drawn verbatim from the GHSA advisory bodies published between 2026-09-08 and 2026-09-09.
Affected packages (25)
- npm@aspect-adv-ui/consent-manager2.4.02.4.1
- npm@haimiya/baileys*
- npm@umschool/analytics999.0.0999.0.1999.0.2999.0.3999.0.4
- npm@vallensofficial/baileys*
- npm@versacode/baileys*
- npm@yongot/canary-mcp-isolation1.0.1
- npm@yongot/canary-mcp-test2.0.03.0.04.0.0
- npmalloy-graphql1.0.1
- npmbx-ui-view1.0.0
- npmexpress-session-timer1.0.01.0.11.0.131.0.141.0.16
- npmfile-type-detector1.1.01.1.1
- npmgloggo1.1.21.1.31.1.4
- npmopen-item-validator1.0.31.0.5
- npmpunypump1.2.21.2.41.2.5
- PyPIpy-devoli-common999.999.999
- npmreact-hook-doms<=5.3.1
- npmrojo-rbx<=1.4.3
- npmselfcerts1.0.0
- npmsonmors2.11.2<=2.11.2
- npmtailwind-aspect-styles<=0.4.2
- npmtailwindcss-aspectratio-styles0.3.40.3.5
- npmtoru-ultimate1.0.0
- npmtwilio-functions99.99.9999.99.100
- npmunifi-credential-server99.0.0
- npmvinzz-wcli<=1.0.1
These are usually pulled in as transitive dependencies rather than installed directly. Check your whole tree at once - it runs in your browser and nothing is uploaded.
Impact
- Cluster A — Coordinated
sonnerReact-toast typosquat trio (sonmors+gloggo+file-type-detector): three npm packages published by the same operator work together as one payload.sonmors@<=2.11.2(GHSA-vp67-pvcp-4j8j) is a near-copy of the widely-usedsonnerReact toast library that spoofs sonner's identity inpackage.jsonand callsrequire('gloggo')at load time.gloggo@1.1.2/1.1.3/1.1.4(GHSA-wmgg-555m-p7h6) masquerades as gulpjs'glogglogging library and gates its hidden loader onisSign('favorite','gloggo',12467)fromfile-type-detector.file-type-detector@1.1.0/1.1.1(GHSA-cjhh-g8v5-hg5g) impersonates the legitimatefile-type-checkerand hides a payload in a PNG that it extracts and writes into sibling packages undernode_modules. Any project that installed the sonner typosquat picked up all three; the PNG-steganography loader means static scanners that only look at.jswill miss the payload - Cluster B — WhatsApp Baileys scope hijacks:
@vallensofficial/baileys,@versacode/baileys, and@haimiya/baileys(all versions; GHSA-gg93-mm5f-23v8 / GHSA-fw7g-gr3j-7wf7 / GHSA-q246-72rh-fp8w) all carry the full-compromise GHSA boilerplate ("any computer that has this package installed or running should be considered fully compromised"). Continues the ongoing Baileys namespace-abuse pattern (kiki-baileysin the 2026-09-08 sweep,WhiskeySAML/baileysearlier). Baileys is a heavily-used unofficial WhatsApp Web API client; a bare or unscoped Baileys reference in a Node.js bot repo resolves against public npm and picks these up - Cluster C — Roblox / gaming ecosystem malware with confirmed persistence:
rojo-rbx@<=1.4.3(GHSA-p55w-6rww-5frg) impersonates the legitimate Rojo Roblox development tooling. On Windows,scripts/install.jsdownloads a VBScript fromhttps://l81.me/updater.vbs, writes it to%APPDATA%\Rojo\rojo-sync.vbs, and installs aHKCU\Software\Microsoft\Windows\CurrentVersion\Run\RojoClientSyncregistry entry so the VBS re-launches on every login.open-item-validator@1.0.3/1.0.5(GHSA-jfq9-9hf7-gr4x) spawns a background Node process that repeatedly pollshttp://itemx.servegame.com:8888/api/x-realtimeandnew Function()-executes the returned code, giving the operator arbitrary code execution on the host - Cluster D — Corporate-namespace dep-confusion probes at sentinel versions:
unifi-credential-server@99.0.0(GHSA-9rgc-h7qj-q8w3) targets Ubiquiti UniFi internal build systems - preinstall harvests hostname / username / cwd / internal IPv4s / CI environment variables and exfils via DNS queries to<hex-payload>.oast.me.twilio-functions@99.99.99/99.99.100(GHSA-73g6-c624-22hf) impersonates the Twilio SDK - postinstall POSTs system info towebhook.site/42ce0f0e-a0a0-41b5-b157-1c0f918e064fwith DNS fallback to2b22ede784d5.oast.fun.@umschool/analytics@999.0.0-999.0.4(GHSA-2qmq-f9mj-rwcj) targets the Umschool scope - postinstall GET toakko.requestcatcher.com/dep-confusion. PyPIpy-devoli-common@999.999.999(GHSA-g8qj-vfr2-9w5c) is the same shape on PyPI, boilerplate-flagged - Cluster E — Webhook / OAST reconnaissance beacons:
@yongot/canary-mcp-isolation@1.0.1(GHSA-7gq6-vvhp-97f4) and@yongot/canary-mcp-test@2.0.0/3.0.0/4.0.0(GHSA-469r-xxvx-62x3) send installer hostname +idoutput + GCP metadata (169.254.169.254,metadata.google.internal) probe results tohttps://webhook.site/b76376f8-118e-44f1-a5ee-8a73f55b137b- same operator across both.alloy-graphql@1.0.1(GHSA-5xmm-9965-mvqw) reads/etc/passwdand/etc/hosts, harvests DNS servers and package.json, POSTs toipbtwv9063nc5hvhodh0s4u9x03rrhf6.oastify.com(Burp Collaborator).@aspect-adv-ui/consent-manager@2.4.0/2.4.1(GHSA-2m5c-v74g-r4m8) postinstall GET towebhook.site/kapper - Cluster F — Remote-code-loader droppers:
tailwind-aspect-styles@<=0.4.2(GHSA-r28r-839h-4gqw) fetcheshttp://23.27.245.100/index.jsover plain HTTP, writes it to./inout.js, and immediatelyrequire()s it.tailwindcss-aspectratio-styles@0.3.4/0.3.5(GHSA-4gjp-7xcv-m2gc) does the same shape viatailwindlan.online- clearly a related pair impersonating the Tailwind CSS aspect-ratio plugin.selfcerts@1.0.0(GHSA-2cj2-qj4h-42hp) hides a base64-encoded C2 URL in a fake TLS cert, fetcheshttp://144.172.104.211/settings/privacy.php, and pipes the response to a detachedpython3process.punypump@1.2.2/1.2.4/1.2.5(GHSA-45jc-2qr4-pmgf) fetches an AES-256-CBC-encrypted payload fromjsonkeeper.com/b/V6NBXandeval()s the plaintext.bx-ui-view@1.0.0(GHSA-hqg3-m33m-mvcr) declares a self-referential dependency pointing athttps://package-access.pages.dev/bx-ui-viewso npm downloads and runs whatever the pages.dev URL currently serves - Cluster G — Credential theft / hardcoded backdoor:
toru-ultimate@1.0.0(GHSA-jg37-3w86-3rx2) is a Facebook credential harvester - theloginViaAPI()function forwards email + password + 2FA Base32 secret tohttps://minhdong.site/api/v1/facebook/login_ios, and the package pulls an unpinned GitHub branch (VangBanLaNhat/fca-unofficial) so the branch controller can inject fresh code at any time.vinzz-wcli@<=1.0.1(GHSA-xv3f-69vw-grmg) is a WhatsApp CLI tool with a hardcoded JID (6285185667890@s.whatsapp.net) that has always-oncmd- andeval-plugin authority - any user who pairs their phone gives the JID owner silent RCE with the installer's privileges - Cluster H — Destructive package:
express-session-timer@1.0.0-1.0.16(GHSA-xf4h-cmpp-qfvf) recursively removes<cwd>/srcroughly 18 seconds afterrequire(), then kills Node / PM2 processes on Unix and Windows. Not exfil - straight sabotage. Its declared dependencyexpress-timer@^0.0.1-securitypins to npm's security-hold placeholder, another red flag - Cluster I — Amazon Inspector / OpenSSF boilerplate takedown (no published analysis):
react-hook-doms@<=5.3.1(GHSA-hj8f-64m3-wrpj) is flagged by amazon-inspector with only a source hash; assume the same GHSA full-compromise boilerplate applies pending independent analysis
What to do
- 1Grep every
package-lock.json,yarn.lock,pnpm-lock.yaml,package.json,requirements.txt, andpoetry.lockin your org for the names below. Uninstall on hit, wipenode_modules, delete the lockfile, and rebuild against a clean cache - 2For Cluster A (
sonmors/gloggo/file-type-detector): anyone who typosquat-installedsonmorsinstead ofsonnerpicked up all three packages. The PNG-steganography payload is not visible in a.js-only static scan - grep for the exact package names, not for the payload. Any hit means the host executed hidden code from a PNG bundled byfile-type-detector; treat as fully compromised, rotate every credential the host had access to, and reimage - 3For Cluster B Baileys hijacks: audit every WhatsApp/Baileys-based Node bot repo for scoped
@vallensofficial/baileys,@versacode/baileys,@haimiya/baileys(and the previouskiki-baileys). Pin the real upstream@whiskeysockets/baileysexplicitly inpackage.jsonand enforce it in CI. GHSA marks all versions of these packages as malicious - assume any host that resolved one is fully compromised - 4For Cluster C
rojo-rbxWindows persistence: on any Windows dev machine that installedrojo-rbx, immediately delete%APPDATA%\Rojo\rojo-sync.vbs, remove theHKCU\Software\Microsoft\Windows\CurrentVersion\Run\RojoClientSyncregistry value, and blockl81.meat the egress proxy. Real Rojo distribution is viagithub.com/rojo-rbx/rojoreleases, not npm - never install a Roblox-tooling package that claims to be Rojo via npm - 5For Cluster D dep-confusion probes: Ubiquiti / UniFi build systems - audit internal npm mirror logs for
unifi-credential-serverresolution attempts. Twilio SDK consumers - explicitly pintwilio(the real SDK), never resolvetwilio-functionsfrom public npm. Any org whose internal scope contains@umschool/- enforce a scopedregistry=line in.npmrcand treat the presence of@umschool/analytics@999.xin any mirror as evidence of active enumeration. Blockoast.me,oast.fun,oastify.com(Interactsh / Burp Collaborator hosts),webhook.site, andakko.requestcatcher.comat the corporate egress proxy - all four are legitimate OAST services being repeatedly weaponised by dep-confusion probe operators and have no legitimate use in production egress - 6For Cluster E OAST beacons: audit DNS logs for queries to
*.oast.me,*.oast.fun,*.oastify.com,webhook.site, and*.requestcatcher.combetween 2026-09-08 and now. Any host with matching DNS or egress records against a package named below is confirmed compromised on install.alloy-graphqlin particular exfiltrates the contents of/etc/passwdand/etc/hosts- that leak is not undoable - 7For Cluster F remote-code loaders: block
23.27.245.100,144.172.104.211,tailwindlan.online,jsonkeeper.com,l81.me,minhdong.site,itemx.servegame.com, andpackage-access.pages.devat the corporate egress proxy. Any host that fetched from one of these while any package below was in the lockfile is fully compromised - reimage after credential rotation - 8For Cluster G credential-theft: any host that ran
toru-ultimatemay have leaked user-provided Facebook credentials + 2FA seeds tominhdong.site; notify affected users and rotate seeds. Any WhatsApp-bot host that installedvinzz-wclihas granted RCE to JID6285185667890@s.whatsapp.net- assume every command that JID could have run has run - 9For Cluster H destructive: any repo that had
express-session-timerin its lockfile and imported it lost itssrc/tree 18 seconds later. Restore from git; do not attempt to recover fromnode_modules - 10For every
npm installin CI, prefer--ignore-scriptsto block postinstall / preinstall payloads. This is the single highest-value mitigation against Clusters D, E, and F - 11Add every name below to internal private-registry (Verdaccio / Artifactory / Nexus) deny-lists for at least 30 days to prevent re-uploads by rotating operators
References
- GitHubGitHub Advisory Database - recent malware advisoriesgithub.com
- GitHubGHSA-vp67-pvcp-4j8j - sonmors (Cluster A - sonner typosquat)github.com
- GitHubGHSA-wmgg-555m-p7h6 - gloggo (Cluster A - glogg typosquat, isSign() gate)github.com
- GitHubGHSA-cjhh-g8v5-hg5g - file-type-detector (Cluster A - PNG steganography loader)github.com
- GitHubGHSA-gg93-mm5f-23v8 - @vallensofficial/baileys (Cluster B)github.com
- GitHubGHSA-fw7g-gr3j-7wf7 - @versacode/baileys (Cluster B)github.com
- GitHubGHSA-q246-72rh-fp8w - @haimiya/baileys (Cluster B)github.com
- GitHubGHSA-p55w-6rww-5frg - rojo-rbx (Cluster C - Rojo Roblox typosquat, Windows Run-key persistence)github.com
- GitHubGHSA-jfq9-9hf7-gr4x - open-item-validator (Cluster C - servegame.com C2 loader)github.com
- GitHubGHSA-9rgc-h7qj-q8w3 - unifi-credential-server (Cluster D - UniFi dep-confusion, oast.me)github.com
- GitHubGHSA-73g6-c624-22hf - twilio-functions (Cluster D - Twilio SDK impersonator)github.com
- GitHubGHSA-2qmq-f9mj-rwcj - @umschool/analytics (Cluster D - dep-confusion 999.x)github.com
- GitHubGHSA-g8qj-vfr2-9w5c - py-devoli-common (Cluster D - PyPI dep-confusion 999.999.999)github.com
- GitHubGHSA-7gq6-vvhp-97f4 - @yongot/canary-mcp-isolation (Cluster E)github.com
- GitHubGHSA-469r-xxvx-62x3 - @yongot/canary-mcp-test (Cluster E)github.com
- GitHubGHSA-5xmm-9965-mvqw - alloy-graphql (Cluster E - oastify.com, reads /etc/passwd)github.com
- GitHubGHSA-2m5c-v74g-r4m8 - @aspect-adv-ui/consent-manager (Cluster E)github.com
- GitHubGHSA-r28r-839h-4gqw - tailwind-aspect-styles (Cluster F - 23.27.245.100 remote loader)github.com
- GitHubGHSA-4gjp-7xcv-m2gc - tailwindcss-aspectratio-styles (Cluster F - tailwindlan.online remote loader)github.com
- GitHubGHSA-2cj2-qj4h-42hp - selfcerts (Cluster F - 144.172.104.211 Python payload)github.com
- GitHubGHSA-45jc-2qr4-pmgf - punypump (Cluster F - jsonkeeper.com AES-256 loader)github.com
- GitHubGHSA-hqg3-m33m-mvcr - bx-ui-view (Cluster F - pages.dev self-ref)github.com
- GitHubGHSA-jg37-3w86-3rx2 - toru-ultimate (Cluster G - Facebook credential harvester)github.com
- GitHubGHSA-xv3f-69vw-grmg - vinzz-wcli (Cluster G - hardcoded WhatsApp JID backdoor)github.com
- GitHubGHSA-xf4h-cmpp-qfvf - express-session-timer (Cluster H - destructive rm src)github.com
- GitHubGHSA-hj8f-64m3-wrpj - react-hook-doms (Cluster I - Amazon Inspector boilerplate)github.com
- OpenSSFOpenSSF malicious-packages repositorygithub.com