package.json. If you see "axios": "^1.14.0" or "axios": "*", you are exposed. The caret tells npm to auto-upgrade to any 1.x version on the next npm install — including 1.14.1, the compromised release. Fix it now:
{
"dependencies": {
"axios": "1.13.2"
},
"overrides": {
"axios": "1.13.2"
}
}
Then commit your package-lock.json. Run npm ci (not npm install) in CI — ci fails if the lockfile and package.json disagree, which catches a maintainer-account takeover.
### Pattern 2 mitigation: enable 2FA on every npm/PyPI account you publish from
If anyone on your team publishes packages, log into npm right now (npmjs.com → Account Settings → 2FA → Authentication and writes). Pick "Authentication and writes", not just "Authentication". This forces a second factor for every npm publish and every package access change. The Axios compromise started with a maintainer email being changed to ifstap@proton.me — 2FA on writes would have stopped it.
### Pattern 3 mitigation: a 4-line CI check that catches install-time payloads
Add to .github/workflows/security.yml:
- name: Block install scripts
run: npm install --ignore-scripts && npm test
The --ignore-scripts flag prevents postinstall and preinstall hooks from running. 80% of npm malware lives in those hooks. Add a separate, gated step that runs scripts only for packages you explicitly trust.
## A comparison: what RSAC 2025 said vs. RSAC 2026
| Theme | RSAC 2025 framing | RSAC 2026 framing | What changed |
|---|---|---|---|
| AI in security | "Augment the analyst" | "Agentic, autonomous, partner the analyst" | LLMs now run tools, not just summarise alerts |
| Supply chain | "SBOM is best practice" | "SBOM is regulatory" | EU CRA + US EO 14028 enforcement |
| Identity | "MFA everywhere" | "MFA isn't enough — session theft and OAuth abuse" | Adversary-in-the-middle phishing kits commodified |
| Cloud | "Misconfig is the #1 risk" | "Lateral movement and IAM blast radius" | Cloud breaches now measured in tenants, not buckets |
## The action list — copy this into a Jira ticket today
- Audit every
package.jsonandrequirements.txtin your repos. Replace caret/tilde ranges with exact versions for production dependencies. - Enable 2FA "Authentication and writes" on every npm, PyPI, GitHub, and Docker Hub account that publishes artifacts.
- Add
npm install --ignore-scriptsto your CI build step. Whitelist scripts only for the 5-10 packages that truly need them. - Generate an SBOM with Syft or CycloneDX on every build. Store it as a CI artifact for 90 days minimum.
- Inventory every MCP server your team's AI tools connect to. Treat each as a privileged tool — give it a service account, not a personal token.
- Rotate any long-lived API keys older than 90 days. Move to short-lived OAuth where possible.
- Run a tabletop: "what do we do if our most-used npm dependency ships malware tomorrow?" 30 minutes, no slides, just the team.
postinstall scripts enabled across the board. Total fix time: 4 working hours. Cost to them: ₹18,000. The hardest part wasn't the technical work — it was getting the lead engineer to commit package-lock.json to git (he had it in .gitignore, a habit from an old monorepo).
For our founder's longer take on supply-chain risk in the Indian SMB context — including a couple of incidents we can't name publicly — see [Vivek Singh's blog on cybersecurity for fast-moving teams](https://viveksinra.com/blog).
## FAQ
### What is the most important takeaway from RSAC 2026 for a small Indian SMB?
Pin your dependencies and enable 2FA on every package-publishing account. These two controls cost you 4 hours and zero rupees. They would have stopped the Axios npm compromise that hit on March 31, 2026 — five days after RSAC closed.
### Do I need an SBOM in 2026 if I'm not selling to the US government?
Yes, if you sell B2B software anywhere. EU buyers under the Cyber Resilience Act will ask for SBOMs starting late 2026. Indian banks under RBI's third-party risk circulars are starting to ask too. Use Syft (free, open-source) and you'll be ready.
### What's an MCP server and why does RSAC care?
Model Context Protocol is the spec that lets LLMs call tools — file systems, databases, APIs. CoSAI's RSAC session showed that MCP servers are exposed without identity boundaries: any agent can call any tool, with whatever privileges the server has. Treat MCP servers like privileged service accounts.
### How do I know if an npm package I depend on was compromised?
Run npm audit daily in CI. Subscribe to GitHub Advisory Database email alerts for your top 10 dependencies. For the Axios case specifically, check your lockfile — if it shows axios 1.14.1 or 0.30.4, you shipped the backdoor. Roll back to 1.13.2 and rotate any secrets accessed from that build.
### Is RSAC worth the trip for an Indian CTO?
If you go for the booths, no. If you go for the briefings and the 7am hallway conversations, sometimes. The full recordings come out two weeks later — most CTOs we know watch from Bengaluru with a notebook open and get 80% of the value for ₹0.
### What should I do about agentic AI risks specifically?
Inventory every agent your team has deployed (Claude in Cursor, internal LangChain pipelines, n8n with AI nodes). For each, ask: what credentials does it hold? What tools can it call? What's the blast radius if its instruction window is poisoned? If you can't answer those three questions in 60 seconds, you have an agentic-AI risk problem worth budgeting for.
### How fast can the Adobe-style "vendor compromise" attack land on an Indian SMB?
The Adobe breach two weeks after RSAC took one phishing email and one RAT install on a BPO agent's laptop — total dwell time before exfil was reportedly hours, not days ([SecurityOnline](https://securityonline.info/adobe-data-breach-mr-raccoon-bpo-supply-chain-leak/)). If your firm uses any outsourced support, accounting, or QA vendor with prod access, that's your same exposure.
Want a 2-Hour Security Posture Review?
We run a focused review for 20-200-person Indian firms: dependency pinning, 2FA audit, SBOM gap, MCP/agent inventory, and a one-page remediation plan. Typical engagement: 2 working days, ₹25,000-₹45,000 fixed scope. Suitable if you ship Node.js, Python, or Go code and want to know what RSAC 2026's findings actually mean for your stack.
Book a 20-min Call
