VDB
GCVE-110-OSM-2026-10229
GCVE-110-OSM-2026-10229
Advisory PublishedCVSS 8.8/10
This is a credential-theft and exfiltration installer masquerading as an Aerodrome contract package, with the attacker model clearly being a supply-chain implant that harvests developer secrets at install time. The entrypoint reads `~/.ssh/id_rsa`, `~/.ssh/id_ed25519`, `.aws/credentials`, `.gitconfig`, `.env` files, Foundry keystores, and `JSON.stringify(process.env)`, then packages the loot into a detached delayed sender. It posts to a hardcoded `webhook.site` endpoint using `https.request`, and uses `spawn(process.execPath, ['-e', src], { detached: true, stdio: 'ignore' })` to survive the install window and hide output. The `preinstall` and `postinstall` hooks in `package.json` ensure arbitrary code runs on install, and the brand-new publisher account strengthens the supply-chain compromise assessment.
ENTRY
index.js (install-hook: node index.js || true)
- Install Hook Executes Local JS File in package.json
- Postinstall Script in package.json
EXFIL
- Environment Variable Exfiltration in index.js: "JSON.stringify(process.env)"
- Sensitive File Access in index.js: "'.ssh/id_rsa'"
- OAST/Interactsh Exfiltration in index.js: "webhook.site"
- Git Configuration Access in index.js: ".gitconfig"
- Network Request in index.js: "https.request("
- System Information Collection in index.js: "os.userInfo()"
ADDITIONAL FINDINGS
- Stealth Background Process Spawning in index.js: "spawn(process.execPath, ['-e', src], { detached: true, stdio: 'ignore' }"
- Shell Command Execution in index.js: "require('child_process')"
- Silent Process Execution in index.js: "stdio: 'ignore'"
- Detached Child Process Payload in index.js: "spawn(process.execPath, ['-e', src], { detached: true"
- Brand New Package
- Very New NPM Publisher Account
PAYLOAD FILES
index.js
Weaknesses (CWE)
CWE-506Embedded Malicious Code
Risk Scores
CVSS 3.1
8.8/10
High · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Affected Products
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| unknown | @aerodrome-finance/contracts | all (affected) | — |
Aliases
Browse GCVE Records
69,369 records in the GCVE database · Updated August 25, 2026
No matching records found.
Explore Further
Investigate this vulnerability in the interactive console or download the raw GCVE record.