News · Security · November 12, 2026
Black October: 16 AI platforms disclosed incidents
Black October is a press label for two separate stories: a cluster of critical flaws, and 16 AI platforms hit since Oct 4. What is proven, and what is not.
DRIVE 369 DAO · 6 min read
"Black October" is a label, not an event. The press and security agencies use it for the cluster of critical disclosures in mid to late October 2026 (INCIBE lists items dated October 16 to 23), and Wiz uses it for something different: a wave in which at least 16 AI developer platforms have disclosed incidents since October 4, with attackers going after stored environment variables that open access to AI services. No source we found shows one coordinated campaign. Facts below were checked on November 12, 2026.
Two stories under one name
| Use of the name | What it covers | Source |
|---|---|---|
| Critical flaws and supply chain, mid to late October | PHP2Shell, GitLab, Node.js, the LiteLLM compromise, certificate incidents at GoDaddy and eMudhra, unauthorised access at PingCAP and Railway | INCIBE-CERT (Spain's national cybersecurity institute), CNBC |
| AI developer platforms, Oct 4 to Nov 9 | Fireworks AI, Andromeda, Zeabur, Lightning AI, OpenCode, Railway, Warp, CommandCode, Northflank, Brev, Trigger.dev, Chainstack, kernel.sh, Blacksmith, Tensorlake, NEAR AI | Wiz, updated Nov 10 |
Nobody has identified who first used the name. The CyberGuy column on Fox News describes it as "a series of cybersecurity emergencies rather than a single coordinated hacking campaign". INCIBE says the advisories "coincided" in time and does not link them. Wiz states that no single vulnerability or dependency connects the platform incidents.
Story one: critical flaws
| Flaw | Facts | In CISA's exploited list? |
|---|---|---|
| PHP, CVE-2026-109618 and 109619 | Remote code execution, fixed Oct 21. See what is proven. | Yes, added Oct 26 (due Oct 29) |
| GitLab, CVE-2026-97229 | CVSS 10.0, an integer overflow in the CI/CD regex compiler that could allow an unauthenticated user to run code. Fixed Oct 12 in 19.4.2, 19.3.5 and 19.2.8 (GitLab). GitLab does not say it is exploited. | Yes, added Oct 29 (due Nov 1) |
| GitLab, CVE-2026-110264 | Another CVSS 10.0 flaw in the same regex compiler, reported by the same researcher, fixed Oct 21 in 19.5.1, 19.4.3, 19.3.6 and older lines (GitLab). If you patched on Oct 12, you need to patch again. | No (checked Nov 12) |
| Node.js, 10 flaws | Fixed Oct 21 in 22.23.4, 24.22.1 and 26.12.1: 4 high, 3 medium, 3 low, none critical, and none marked exploited by Node.js at release (Node.js). | CVE-2026-111497 (Brotli) added Oct 27 (due Nov 10) |
| SonicWall SMA 1000, CVE-2026-102255 | CVSS 10.0 server-side request forgery. SonicWall's notice says there was no evidence of exploitation; BleepingComputer reported attack traffic seen by two honeypot operators. Disputed. | No (checked Nov 12) |
The CISA entries are in the official catalogue. INCIBE's list covers PHP, the second GitLab flaw and Node.js; we added the first GitLab flaw and SonicWall as maximum-severity flaws of the same weeks. The LiteLLM case is not a flaw but a poisoned release, covered below.
Story two: AI platforms and their keys
What happened. Wiz lists incidents at 16 platforms from October 4 to November 9. Fireworks, Zeabur and Lightning attribute theirs to credential access. Railway cites privilege escalation in its build infrastructure, Warp a third-party vendor dependency, OpenCode a legacy system. Wiz says every public report describes targeted hunting of stored environment variables, especially those that grant AI access. Railway believed its attacker wanted AI provider keys, possibly to distil models. Some platforms mention an "agent swarm" pattern, which we could not verify.
The best-documented case, Railway. The attack window ran from October 20 (13:58 UTC) to October 22 (03:32 UTC). The attacker reached internal CI credentials and decrypted a subset of customers' encrypted environment variables. Railway's preliminary report says at most 1.85% of workspaces, about 100,000, may have had variables exposed, and that it asked AI providers to reset keys for more than 100,000 users out of caution. It has not ruled out that source code was accessed.
What stolen keys were used for. Wiz describes two cases of enterprise Amazon Bedrock keys stolen in vendor breaches. One key made about 800,000 model calls in roughly 30 hours, the other about 1.7 million in roughly 13 hours. At list price that is more than $100,000 of usage. Each began with a single validation call within 30 minutes of the reported theft. Wiz ties the use to two reselling operations and says several actors are using the keys, which suggests a market for them.
Supply chain, LiteLLM. On October 21 a malicious litellm 1.107.0 was live on PyPI from 11:39 to 13:23 UTC and on Docker Hub until 14:20 UTC. It was built from a lookalike repository, and the code stole credentials and loaded remote-code tools. The maintainers say to pin 1.106.2, delete the files they list, rotate every reachable credential and assume exfiltration if it ran with outbound internet (LiteLLM). Its initial access is not confirmed, and the maintainers say enterprise private-registry customers were not affected.
What is proven, and what is not
| Status | |
|---|---|
| Several critical flaws were disclosed between Oct 5 and Oct 21 (dates in the table above) | Proven (vendor pages, CISA) |
| 16 AI platforms disclosed incidents | Reported by Wiz from the platforms' own disclosures |
| Stored environment variables and AI keys were the target | Reported by the platforms, Wiz; Railway's account is the most detailed |
| One attacker or one flaw connects them | Not shown. Wiz finds none; no source argues it |
| The motive is model distillation | Claimed by some platforms, not verified |
| How many customers lost keys | Unknown, except Railway's upper bound |
Do this week
- List every AI key you keep as an environment variable at a platform or in a build system, and what each can spend.
- Rotate keys a platform stored for you, especially those created before the platform's incident, and revoke the old ones.
- Give each key the narrowest scope and a spending cap. Set an alert on unexpected usage at your AI provider.
- Check usage logs for calls you did not make, from addresses you do not use. Railway cannot refund spend from compromised keys.
- Patch GitLab and Node.js if you run them, including the second GitLab release.
- If you ran litellm 1.107.0, follow the maintainers' steps above.
More: where AI keys should live.
Where Ghostdrive stands
Ghostdrive is not a platform you host your keys on, and we say that plainly. What we can offer is a place to keep them off a platform in the first place: Pass stores API secrets as sealed items on your device. The honest limit is that a key you paste into a service is that service's key. Our agents use grants and scopes, and a connected AI gets its own token with no permission to send, pay, sign or publish (Crew).
Academy: start here · Provider-held keys · Secrets and rotation
Questions
- What is Black October?
- An informal press label for a cluster of security disclosures in October 2026. It is used for two different groups: critical software flaws (PHP, GitLab, Node.js) and a wave of incidents at AI developer platforms. No source shows one coordinated campaign.
- Who is behind the attacks on AI platforms?
- Unknown. Wiz found no single vulnerability or dependency linking them, and says several actors are using stolen keys. Railway believes its attacker wanted AI provider keys.
- What should I do if I keep AI keys in environment variables?
- Rotate keys that a platform stored for you, give each key the narrowest scope and a spending limit, and check your AI provider usage for unexpected calls.