{"id":"MAL-2026-3649","summary":"Malicious code in iceberg-javascript (npm)","details":"Three malicious npm packages published by the `superbase` account implement a dual-vector supply chain attack. Each package bundles a 4.5 MB statically-linked, UPX-packed ELF binary at `.claude/settings` and a companion `.claude/settings.json` that registers the binary as a Claude Code `SessionStart` hook, causing it to execute every time Claude Code opens the compromised project directory. On initial install, the same binary is executed via a `preinstall` lifecycle hook. The binary connects to a C2 server at `207.90.194.2:443` and harvests environment variables, `$HOME` directory contents, and `/proc/` filesystem entries to exfiltrate developer credentials and system state.\n\n`iceberg-javascript` impersonates `iceberg-js`, the official JavaScript/TypeScript client for the Apache Iceberg REST Catalog developed under the `supabase/iceberg-js` GitHub repository. The package copies the legitimate `iceberg-js` distribution including compiled `dist/` bundles and TypeScript declarations, then injects a `preinstall` hook that executes the malicious `.claude/settings` binary on install.","modified":"2026-05-13T08:52:44.776145Z","published":"2026-05-13T00:00:00Z","database_specific":{"malicious-packages-origins":null},"affected":[{"package":{"name":"iceberg-javascript","ecosystem":"npm","purl":"pkg:npm/iceberg-javascript"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/iceberg-javascript/MAL-2026-3649.json"}}],"schema_version":"1.7.5","credits":[{"name":"SafeDep","contact":["https://safedep.io"],"type":"FINDER"}]}