<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>OhShit! Security incidents</title><description>Every security incident on the internet, graded by stench, each with a clean-up guide. Open data, MCP, JSON API and RSS.</description><link>https://ohshit.app/</link><item><title>[L5 Shitstorm] PHP2Shell: two critical PHP core RCEs leak a day before the patch, and nearly every PHP back to 5.4 is in the bowl</title><link>https://ohshit.app/incidents/php2shell/</link><guid isPermaLink="true">https://ohshit.app/incidents/php2shell/</guid><description>CVE-2026-109618 and CVE-2026-109619 (both CVSS 9.2) give remote code execution in PHP itself. A proof-of-concept video leaked the evening before release, so the patch and the exploit arrived together.

How to wipe: Upgrade to 8.5.12 / 8.4.27 / 8.3.36 / 8.2.35. Disabling session.upload_progress only blunts one of the two bugs</description><pubDate>Wed, 21 Oct 2026 00:00:00 GMT</pubDate><category>PHP</category><category>RCE</category><category>leaked early</category></item><item><title>[L4 Septic Tank Blew] GitLab patches its second CVSS 10.0 regex-compiler RCE in nine days, and this one reaches back to GitLab 7.0</title><link>https://ohshit.app/incidents/gitlab-regex-rce/</link><guid isPermaLink="true">https://ohshit.app/incidents/gitlab-regex-rce/</guid><description>CVE-2026-110264 (CVSS 10.0) is an integer overflow in the Onigmo regex compiler that lets an unauthenticated user run code on self-managed GitLab, from 7.0 onwards. It lands nine days after CVE-2026-97229, a sibling bug that already has a public PoC. Servers patched on Oct 12 are still exposed.

How to wipe: Upgrade to 19.5.1 / 19.4.3 / 19.3.6 / 19.2.9 / 19.1.9 / 19.0.10 / 18.11.13. There is no workaround</description><pubDate>Wed, 21 Oct 2026 00:00:00 GMT</pubDate><category>GitLab</category><category>RCE</category><category>self-managed</category></item><item><title>[L4 Septic Tank Blew] Node.js October security releases for 22, 24 and 26: ten CVEs, including a Brotli RCE and TLS hostname bypasses</title><link>https://ohshit.app/incidents/nodejs-oct-2026/</link><guid isPermaLink="true">https://ohshit.app/incidents/nodejs-oct-2026/</guid><description>Four HIGH, three MEDIUM and three LOW. An out-of-bounds write in the Brotli decoder, dns.resolve truncating names at a NUL byte, and IP spellings that sneak past certificate hostname checks. The release also rejects the compromised eMudhra keys.

How to wipe: Upgrade to 22.23.4 / 24.22.1 / 26.12.1, rebuild containers, then restart so old TLS sessions drop</description><pubDate>Wed, 21 Oct 2026 00:00:00 GMT</pubDate><category>Node.js</category><category>TLS</category><category>RCE</category></item><item><title>[L4 Septic Tank Blew] PingCAP confirms TiDB Cloud intrusion: a stolen service account roamed internal systems for a month</title><link>https://ohshit.app/incidents/tidb-cloud/</link><guid isPermaLink="true">https://ohshit.app/incidents/tidb-cloud/</guid><description>From Sep 9 to Oct 7 an intruder used stolen service-account credentials to copy account metadata, billing info, SQL editor text, encrypted API-key values and source code. Extortion group FulcrumSec claims 10.6 TB; PingCAP has not confirmed that.

How to wipe: Rotate TiDB Cloud API keys and DB passwords, scrub secrets from SQL editor history, review access logs</description><pubDate>Mon, 19 Oct 2026 00:00:00 GMT</pubDate><category>cloud database</category><category>credentials</category><category>extortion</category></item><item><title>[L4 Septic Tank Blew] eMudhra CA intermediate private keys were so weak that every one was a number below 256</title><link>https://ohshit.app/incidents/emudhra-ca/</link><guid isPermaLink="true">https://ohshit.app/incidents/emudhra-ca/</guid><description>Eight intermediate certificates (six TLS, two code signing) under emSign ECC Root CA - G3, cross-signed by Sectigo, had P-384 private keys that were integers below 256. Anyone could recover them instantly and mint certificates for any domain.

How to wipe: Update browsers and OSes, certifi 2026.10.19, Go 1.27.3 / 1.26.10, Node 22.23.4+; block the 8 intermediates in custom trust stores</description><pubDate>Sat, 17 Oct 2026 00:00:00 GMT</pubDate><category>PKI</category><category>CA</category><category>TLS</category></item><item><title>[L4 Septic Tank Blew] ConnectWise Cloud Backup&apos;s app secret got stolen, and attackers walked into Microsoft 365 tenants through the front door</title><link>https://ohshit.app/incidents/connectwise-cloud-backup/</link><guid isPermaLink="true">https://ohshit.app/incidents/connectwise-cloud-backup/</guid><description>An API secret for ConnectWise&apos;s multi-tenant backup app (formerly SkyKick) was stolen. Every Microsoft 365 tenant that had consented to the app was suddenly reachable with the permissions customers had granted it. ConnectWise suspended several cloud services.

How to wipe: Remove or re-consent the ConnectWise apps, review Entra sign-ins from 144.172.64.x, check for new Global Admins and app secrets</description><pubDate>Fri, 16 Oct 2026 00:00:00 GMT</pubDate><category>SaaS</category><category>OAuth</category><category>Microsoft 365</category></item><item><title>[L4 Septic Tank Blew] Ivanti Connect Secure zero-day chain: unauthenticated root on fully patched VPN boxes, again</title><link>https://ohshit.app/incidents/ivanti-connect-secure-chain/</link><guid isPermaLink="true">https://ohshit.app/incidents/ivanti-connect-secure-chain/</guid><description>Attacker UTA0576 chained an auth bypass, a file write and a privilege escalation to take over VPN appliances running the latest release, then went after AD credentials, LAPS passwords and BitLocker keys. CISA added it to KEV the same day.

How to wipe: Patch to 22.8R2.5 / 25.1.1.2 / 25.1.3.x, run Ivanti&apos;s external Integrity Checker, rotate every credential that touched the box</description><pubDate>Tue, 13 Oct 2026 00:00:00 GMT</pubDate><category>zero-day</category><category>VPN</category><category>edge device</category></item><item><title>[L4 Septic Tank Blew] GhostAction is back: hijacked maintainer accounts plant “security-audit.yml” workflows that ship your CI secrets out</title><link>https://ohshit.app/incidents/ghostaction-returns/</link><guid isPermaLink="true">https://ohshit.app/incidents/ghostaction-returns/</guid><description>Compromised GitHub accounts pushed workflows dressed up as security jobs that exfiltrate Actions secrets. A new variant scans full git history, so the key you deleted three years ago still counts. GitHub started blocking the workflow on Oct 9.

How to wipe: Search .github/workflows for security-audit.yml and friends, rotate every CI secret and any key ever committed, revoke old PATs</description><pubDate>Fri, 09 Oct 2026 00:00:00 GMT</pubDate><category>supply chain</category><category>GitHub Actions</category><category>secrets</category></item><item><title>[L4 Septic Tank Blew] The Oracle Health breach tally quietly climbs to nearly 20 million patients</title><link>https://ohshit.app/incidents/oracle-health-20m/</link><guid isPermaLink="true">https://ohshit.app/incidents/oracle-health-20m/</guid><description>Stolen logins on two legacy Cerner servers in early 2025. The true size only surfaced through a Texas attorney-general filing: 19.9 million people, with SSNs, diagnoses, medications and medical images. Oracle still hasn&apos;t published a total.

How to wipe: Freeze your credit, watch for fake “Oracle Health” notices; providers: enforce MFA and retire legacy servers</description><pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate><category>healthcare</category><category>data leak</category></item></channel></rss>