This week the security news did not offer one story. It offered six, in about five days: a flaw in the PHP runtime, a poisoned AI gateway package, a certificate authority whose keys could be computed from public data, an actively exploited remote support appliance, a joint ransomware advisory covering critical infrastructure, and a patch day for GitLab and Node.js.
Some people are calling it a wave of attacks. The evidence says something more specific and more useful: a lot of long-standing weaknesses became public at once, and several sit in the foundations that everything else depends on. This post walks through what is confirmed, what it means for GRC programs, and how to prepare for the larger disruptions that this pattern makes more plausible.
What Happened This Week
eMudhra certificate authority keys. Google and Mozilla say private keys for eight intermediate certificates from India-based CA eMudhra (six for TLS, two for code signing) were generated with too little randomness, so they could be derived from the public certificates. Browser vendors blocked them between October 17 and 20, and Chrome plans to remove the related root on October 27. eMudhra says none of the intermediates issued end-entity certificates and attributes the flaw to a key ceremony in April 2025. Whether anyone abused the keys is not known.
BeyondTrust Remote Support, CVE-2026-102764. BeyondTrust confirmed an authentication bypass exploited as a zero-day since late August. Mandiant attributes the activity to a suspected China-nexus group it calls ARMORY CASTLE, and CISA added the flaw to its Known Exploited Vulnerabilities catalog on October 16. Patching does not remove an attacker who is already in, so affected appliances need investigation, not just an update.
SafePay ransomware. A joint advisory from U.S., German and U.K. agencies says SafePay has affected at least 600 organizations across critical infrastructure sectors since August 2024. It reports initial access through exposed credentials, VPNs and edge device flaws, and deliberate destruction of backup copies. The agencies note the real count is likely higher.
LiteLLM and PHP2Shell. A malicious LiteLLM 1.107.0 reached PyPI and Docker on October 21 and targeted cloud and AI credentials, according to the vendor and several researchers (full write-up here). The same day, PHP shipped emergency fixes for two critical runtime flaws, which I covered in a separate post.
GitLab and Node.js. Both shipped fixes on October 21. GitLab's CVE-2026-110264 is rated CVSS 10.0 and allows unauthenticated code execution on self-managed servers. Node.js fixed ten flaws, including a high-severity Brotli decoder bug it says permits remote code execution. Neither project reports exploitation in the wild.
Confirmed vs Still Unclear
- Confirmed: the vendor and agency advisories above, the fixed versions, and the BeyondTrust exploitation since August.
- Unclear: whether the eMudhra keys were ever misused, and how LiteLLM's attacker first got in.
- Attribution: the China-nexus link for BeyondTrust is Mandiant's suspected assessment, not an established fact.
- Framing: the label "Black October" has no verified origin. One analysis argues this is a disclosure wave rather than an attack wave. That is opinion, but it fits the dates.
- AI's role: Wiz says AI tools made the PHP2Shell chain practical, and eMudhra says the weak keys may have been found with AI-assisted techniques. These are vendor statements, not independent findings.
The Pattern Behind the Headlines
Look at what was affected: the language runtime, a package registry, the trust layer behind HTTPS, a privileged access tool, backup systems, and developer infrastructure. These are shared foundations. When one breaks, the damage is not limited to one product, because everything built on top inherits the problem.
Several of the sources also point to the same accelerant. If AI tools lower the cost of finding and chaining old flaws, the gap between a weakness existing and a weakness being usable shrinks. That claim is still being tested, but it is a reasonable planning assumption.
Why This Is a GRC Problem
- Inventory: Can you list where PHP, Node.js, GitLab, BeyondTrust, LiteLLM and a given CA's certificates exist in your environment, today?
- Third-party risk: Your exposure runs through vendors, registries and certificate authorities you did not pick directly.
- Change and patch process: Three emergency patches landed on one day. Can your process handle that without breaking production?
- Detection: Patching a compromised appliance does not evict an intruder. Log retention and forwarding decide whether you can tell.
- Evidence: Auditors will ask what you did, when, and who approved it.
Control Mapping
| Framework | Relevant control area |
|---|---|
| NIST CSF 2.0 | ID.AM (asset inventory), GV.SC (supply chain risk), PR.PS (platform security), DE.CM (monitoring), RS.MA (incident management), RC.RP (recovery) |
| ISO/IEC 27001:2022 | A.8.8 Technical vulnerabilities, A.8.32 Change management, A.5.21 ICT supply chain, A.8.13 Information backup |
| SOC 2 | CC7.1 (vulnerability detection), CC8.1 (change management), CC9.2 (vendor risk) |
Action Plan
Next 24 hours
- Check for the exposed items above and patch internet-facing ones first: BeyondTrust, GitLab, Node.js, PHP.
- Look for LiteLLM 1.107.0 in builds and images, and rotate credentials if it ran.
- For BeyondTrust, treat any exposed self-hosted appliance as possibly compromised until reviewed.
Next 7 days
- Find which of your applications, appliances and Java or Go programs trust the affected eMudhra roots, since some use their own trust stores and need rebuilds or updates.
- Confirm backups are isolated from the accounts and networks an attacker would reach first.
- Ask critical vendors for patch status in writing.
Next 90 days
- Add runtimes, appliances and trust anchors to the asset inventory.
- Rehearse an emergency change for several simultaneous critical patches.
- Test a restore from offline backups and record the time it took.
Staying Vigilant and Preparing for Larger Disruptions
Nothing this week shows a coordinated attempt to disrupt daily life. What it shows is how many everyday services depend on a small number of shared components, and how quickly trust in one of them can disappear. Planning for a major disruption means planning for that kind of failure, not for a specific attacker.
- Pick a few scenarios and write them down. Useful ones: a trust anchor such as a certificate authority is revoked, a core runtime or package source is compromised, a critical vendor is unavailable for days, and backups are destroyed along with production.
- Map your critical services to their dependencies. Know which five or six shared components would stop the business if they failed, and who owns each one.
- Practice degraded operation. Run a tabletop where identity, DNS or a certificate chain is unavailable. Decide in advance what runs manually and who can approve it.
- Shorten your decision loop. Define criteria for emergency change, name the approvers, and set a target time from advisory to action.
- Keep reliable intelligence feeds. Subscribe to CISA alerts, your vendors' advisories and your sector ISAC, and assign someone to triage them daily.
- Make recovery real. Immutable or offline backups, tested restores and out-of-band communication matter more than any single prevention control.
- Brief leadership before the event. A board that has seen the scenarios will approve the emergency spend faster.
Final Thoughts
It is easy to treat a week like this as noise. The better reading is that it was a stress test, and it showed which organizations know what they run, can change it quickly, and can recover when something underneath them fails. Vigilance is mostly boring work done early: inventory, tested backups, rehearsed decisions.
Details on several of these stories are still developing, so confirm versions, indicators and guidance against vendor and official advisories before acting on any single article, including this one.
Sources
- CSO Online: Google, Mozilla revoke eMudhra intermediates after private key compromise
- The Hacker News: Eight eMudhra CA keys compromised
- Rapid7: CVE-2026-102764 BeyondTrust Remote Support authentication bypass exploited in the wild
- BleepingComputer: BeyondTrust patches zero-day exploited in attacks since August
- BleepingComputer: CISA and FBI on SafePay ransomware
- GitLab: Patch release 19.5.1
- SecurityOnline: Node.js security release, October 2026
- Konfirmity: Node.js October 2026 security releases
- LiteLLM: Oct 21, 2026 release v1.107.0 incident notice
- Wiz: LiteLLM Compromised, Steals Credentials
- Forkast via Yahoo: Black October is a disclosure wave

