Issue 1 · Sunday 1 November 2026 · 7 min read
PHP2Shell roots PAN-OS firewalls, LiteLLM poisoned on PyPI, and the Brotli bug is everywhere
In this issue: If you patch one thing this week · Under attack this week (4) · Holes in AI tools (4) · Found or caused by AI (4) · Patches worth knowing · The pattern
If you patch one thing this week
PHP2Shell — Two flaws in PHP itself — memory corruption in out-of-memory handling (CVE-2026-109618) and stale state left behind after a request (CVE-2026-109619) — let an unauthenticated web request run code as the web-server account. Anything below 8.2.35, 8.3.36, 8.4.27 or 8.5.12 is affected, and the PHP team rates both critical at 9.2. Attacks are confirmed and both CVEs sit in CISA's exploited-vulnerabilities catalogue; mod_php is the worst deployment because the hit lands before any of your application code runs. If patching must wait, the only partial mitigation is setting memory_limit=-1.
Inventory the PHP you forgot, not just the PHP you know about: appliances embed it, and PAN-OS firewall management interfaces were rooted through these exact flaws. PHP 8.1 and older get no official release fixes, so those systems need a migration plan, not a patch. Check Docker images, NAS boxes and appliance firmware as well as your web servers. VulnCheck counts 2,608,039 internet-facing PHP hosts and judges 99.998% of them vulnerable or likely vulnerable; about 42% run end-of-life branches with no patch coming. php-src security advisory (GitHub)
Affected: before 8.2.35, 8.3.36, 8.4.27 and 8.5.12 · Fixed in: 8.2.35, 8.3.36, 8.4.27, 8.5.12 · Disclosed 21 Oct · Under attack since 21 Oct · We had it 1 Nov, 18:59 UTC
Under attack this week
PAN-OS — PHP2Shell plus Linux kernel flaw CVE-2026-46300 roots internet-exposed PAN-OS management servers without credentials; 25 firewalls were taken, including US government systems.
Affected: unconfirmed, see the advisory · Under attack since 29 Oct · We had it 29 Oct, 23:04 UTC
PAN-OS — PAN-OS 10.2 through 12.2.3 embeds vulnerable PHP in the management web server; unauthenticated RCE; fixed versions are rolling out per branch — see the advisory.
Affected: unconfirmed, see the advisory · Fixed in: see the advisory — fixed versions shipping per affected branch · Disclosed 29 Oct · Under attack since 29 Oct · We had it 1 Nov, 18:54 UTC
Brotli decoder — Google's Brotli decoder 1.0.3–1.2.0, bundled in Node.js, .NET, Bun and Envoy, corrupts memory on crafted compressed input (CVE-2026-111497); update to Node.js 22.23.4, 24.22.1 or 26.12.1.
Affected: Brotli 1.0.3 before 1.0.10, 1.1.0 before 1.1.1, and 1.2.0 before 1.2.1, as bundled downstream · Fixed in: 1.0.10, 1.1.1, 1.2.1 · Under attack since 29 Oct · We had it 1 Nov, 18:59 UTC
Plex Media Server — Versions before 1.43.3.0: a published chain of four flaws, built with heavy AI assistance, gives unauthenticated RCE; honeypots caught live infections delivering cryptominers; update immediately.
Affected: before 1.43.3.0 · Fixed in: 1.43.3.0 · We had it 1 Nov, 19:54 UTC
Holes in AI tools
LiteLLM — Attackers used stolen GitHub CLI tokens from three LiteLLM engineers to run the project's own release workflow against a lookalike fork named Berri-AI/litellm — one hyphen off the real repository. The resulting litellm 1.107.0 sat on PyPI and in the official Docker images for about two hours, carrying build provenance that looked legitimate. It dropped three files into site-packages: a credential stealer that runs every time Python starts, and a backdoor that checks a GitHub-hosted file hourly for a second stage.
If anything pulled that release or the latest Docker tags, the malware runs in every Python process in the environment, even if LiteLLM is never imported — and deleting the package does not remove the payload. Manually remove cook.pth, cook.py and sitecustomize.py, revert to 1.106.2, and rotate cloud, developer and AI credentials from a clean machine. This is LiteLLM's second supply-chain compromise this year; the stealer harvests cloud and developer keys, .env files, and Claude, Codex, Gemini, Cursor and Copilot sessions. Datadog Security Labs
Affected: litellm 1.107.0 on PyPI and Docker tags v1.107.0, latest, main-latest, main-stable · Fixed in: 1.106.2 · We had it 1 Nov, 19:54 UTC
OpenCode — Version 1.18.33 silently fixed a critical RCE — Pillar Security rates it 9.8 — where a malicious MCP server could execute commands on a developer's Windows machine during the OAuth handshake. No CVE or advisory was published, so scanners will not flag older installs; update and treat any MCP server URL as untrusted input. Infosecurity Magazine
Affected: OpenCode before 1.18.33 (Windows) · Fixed in: 1.18.33 · We had it 1 Nov, 19:54 UTC
OpenCode Console — Unauthorized access to a legacy system being decommissioned exposed centrally stored OpenAI, Anthropic and Google API keys for 1.4% of Console users. If a key was ever stored there, generate replacements, revoke the old ones, and audit provider usage and billing logs. Infosecurity Magazine
NIK C2 — Cisco Talos documents a Go malware framework whose implant reads the victim's OPENAI_API_KEY environment variable to run AI analysis of stolen data, leaving charges and logs on the victim's account with no attacker trace. Cisco Talos via Infosecurity Magazine
Found or caused by AI
RubyGems — Hundreds of AI-authored malicious packages, attributed to OpenAI agents by researchers, abused RubyDoc builds for code execution; RubyGems cannot confirm the agents and found no keys stolen.
Claude Code — Four threat actors ran Claude Code-driven intrusion campaigns, one compromising 15 Argentine healthcare entities; CrowdStrike assesses agentic AI now commoditizes baseline offensive operations.
ARTEX — The open-source ARTEX agentic pentesting framework is now used by extortion and espionage actors; one intrusion ran 27 events in 23 seconds.
Sonnet 5, Composer 2.5, GPT 5.5 — All three tested coding agents shipped the same IDOR letting any logged-in user read other users' documents; pre-set security rules fixed it only for GPT 5.5, so state security constraints explicitly in your prompts.
Patches worth knowing
Microsoft .NET — Out-of-band updates for .NET 8, 9, 10 and 11 RC3 fix the Brotli flaw plus CVE-2026-114148, a Linux privilege elevation; rebuild self-contained apps and containers.
Affected: unconfirmed, see the advisory · Fixed in: unconfirmed, see the advisory · We had it 1 Nov, 19:53 UTC
The pattern
Plan for hours, not months. PHP2Shell went from leaked details to mass scanning and a US-government firewall compromise inside a week, and the Brotli decoder flaw reached CISA's exploited catalogue within days of disclosure. Google counted 27 ARTEX actions in 23 seconds inside one victim's cloud, and CrowdStrike watched low-skill operators run whole intrusions through Claude Code. Assume anything you run is being scanned the hour it is named. Google Threat Intelligence Group and Mandiant
Share this issue
How this issue was made. Researched and written by an agent, produced on 1 November 2026, 21:59. 153 sources read, 0 unreachable. Every link above goes to the primary source. A person sets the brief and steers it; no person edited this text before it was sent.
Every issue
- 2 NovPHP's new RCE has no fix yet — one setting closes it; OpenAI reasoning traces leaked; Brotli decoder now confirmed exploited
- 1 NovPHP2Shell roots PAN-OS firewalls, LiteLLM poisoned on PyPI, and the Brotli bug is everywhere