The week main as much as October 25, 2026, was each cyber defender’s nightmare: a barrage of essential vulnerabilities in PHP and the Linux kernel, a compromised LiteLLM launch, a maximum-severity flaw in GitLab, a Node.js Brotli flaw, and a certificates authority incident affecting TLS belief.
Just a few years in the past, a backlog like this is able to have stuffed a defender’s to-do record for an entire month. Within the age of AI, all of this was reported inside a single “Cybersecurity Black Week,” an exceptionally eventful seven-day interval amid an already turbulent Black October. AI-assisted analysis helped uncover at the least two of those flaws: PHP2Shell and the Brotli bug. On high of the breakneck patching tempo, safety groups confronted mounting stress to ship standing experiences to different departments, administration, prospects, and the media.
Past their severity, the problems stood out for the number of responses they demanded. Some required emergency runtime patches and upgrades; others known as for containment, credential rotation, or the substitute of outdated certificates belief bundles. In a number of circumstances, putting in the newest model was solely the start of an extended remediation course of.
With so many issues touchdown directly, the principle problem was separating actual threat from hype and prioritizing accordingly. Right here is our evaluation.
PHP2Shell: The loudest headline, with real-world limits
PHP2Shell generated the largest media frenzy of the lot and, with it, a serious headache for safety groups, prompting many organizations to take their web sites offline and search for emergency fixes. The identify refers to 2 memory-safety vulnerabilities in PHP core, CVE-2026-109618 and CVE-2026-109619, affecting PHP variations 5.4 by way of 8.5.11. Each vulnerabilities obtained a CVSS v4.0 rating of 9.2 and may enable unauthenticated distant code execution (RCE) on susceptible PHP servers. Within the highest-risk setups, a demonstrated exploit can set off the vulnerability earlier than utility code runs, that means application-level authentication presents no safety.
With PHP powering an estimated 69% of internet sites whose server-side programming language is thought, authorities companies in the US, Europe, and elsewhere urged organizations to patch instantly, with some advising that affected internet-facing methods be remoted or taken offline if they might not be patched promptly. Authorities web sites within the Netherlands, Germany, France, and different international locations had been quickly taken offline as a precaution. The PHP challenge launched fixes on October 21 in variations 8.5.12, 8.4.27, 8.3.36, and eight.2.35, together with source-only backports for the end-of-life 7.4, 8.0, and eight.1 branches. The rollout was sophisticated by a untimely public leak, which pressured the coordinated disclosure timeline ahead.
Whereas the issues clearly belonged close to the highest of the patching record, early proof recommended they had been significantly tougher to weaponize than initially feared. Profitable exploitation requires particular situations and information of the goal, and public proof-of-concept exploits didn’t work towards a default PHP set up, in response to Sansec.
On October 22, ESET was amongst 9 safety firms that informed NBC Information that they had not seen any profitable assaults, despite the fact that greater than 200 proof-of-concept exploits had been circulating. The remediation problem extends past apparent net servers: PHP can be embedded in home equipment, community gadgets, administration interfaces, and third-party merchandise, whereas end-of-life PHP branches don’t obtain regular upstream binary releases.
Linux kernel: Stories went public earlier than fixes had been prepared
As if the PHP points weren’t extreme sufficient, on October 21, Pattern Micro’s Zero Day Initiative (ZDI) despatched a number of experiences on unpatched Linux kernel vulnerabilities to the kernel’s non-public safety handle whereas additionally copying public mailing lists. In consequence, technical particulars of vulnerabilities for which fixes weren’t but typically out there turned public, prompting secure kernel maintainer Greg Kroah-Hartman to query why the experiences had been despatched to public lists with out patches.
The 2 most extreme points, each rated CVSS 9.0 by ZDI, have an effect on KSMBD, the Linux kernel’s built-in SMB server. ZDI-CAN-33549 is an integer underflow within the SMB Direct path that would result in RCE, whereas ZDI-CAN-33774 is a race situation that would additionally result in RCE. Exploiting ZDI-CAN-33549 requires an RDMA-capable interface, a writable KSMBD share, and SMB Direct negotiation, considerably narrowing the variety of methods uncovered to that exact assault. Different experiences involved native privilege escalation vulnerabilities within the networking stack and the VMware graphics driver, in addition to an info disclosure difficulty within the NVMe goal code (NVMET).
To remediate, safety groups needed to monitor every report independently, seek the advice of distribution advisories, and prohibit uncovered companies the place sensible whereas awaiting verified fixes. Kernel updates additionally required rebooting into the patched kernel and checking the working model, not merely confirming {that a} new bundle had been put in.
LiteLLM: Compromised, not merely susceptible
On October 21, attackers printed a malicious model of LiteLLM, 1.107.0, to PyPI and pushed compromised pictures to the challenge’s official container registries. In response to the challenge’s incident report, its launch pipeline was breached utilizing GitHub CLI credentials related to three builders. One of many stolen tokens belonged to an proprietor of the challenge’s GitHub group, permitting attackers to disable department protections and modify the discharge workflow to level to a lookalike repository. LiteLLM, a Python proxy for LLM suppliers, has about 23 million weekly downloads, and the malicious model remained out there on PyPI for roughly two hours earlier than it was quarantined. It was the challenge’s second supply-chain compromise of 2026, after malicious variations 1.82.7 and 1.82.8 appeared in March.
The payload mixed a credential stealer with a second-stage distant entry trojan (RAT). By abusing Python’s startup mechanisms, together with a .pth file, it ran each time Python began, even when an utility by no means imported LiteLLM. Execution due to this fact didn’t depend upon exploiting an utility flaw: merely working Python in an affected setting might be sufficient.
Affected environments needed to be handled as doubtlessly compromised, not merely susceptible. In response to LiteLLM, these included environments that ran litellm==1.107.0 and containers that executed affected pictures distributed beneath the v1.107.0, newest, main-latest, or main-stable tags throughout the compromised intervals. Eradicating or changing the bundle was inadequate: groups wanted to find out whether or not the malicious code had run, include affected methods, rebuild from clear sources, and rotate uncovered secrets and techniques from a clear setting. Cloud, source-control, and CI/CD logs additionally needed to be reviewed for unauthorized exercise.
Node2Shell: From Node.js to HTTP2Shell
Node2Shell (CVE-2026-111497) is an out-of-bounds write in Google’s Brotli decoder, which Node.js bundles. Malformed compressed enter could cause crashes, reminiscence disclosure, or doubtlessly RCE when an utility decompresses attacker-controlled Brotli information. This may occur by way of express decompression, compressed request our bodies, or robotically decompressed responses. Node.js charges the flaw as excessive severity, whereas the broader Brotli vulnerability carries a CVSS v4.0 rating of 9.2. In response to Aikido, researchers demonstrated code execution towards the official, unmodified Node.js 24.22.0 picture on Linux ARM64. Though the exploit didn’t work on each try, the demonstration confirmed that exploitation was sensible, if not universally dependable.
Node.js shipped fixes on October 21 in variations 22.23.4, 24.22.1, and 26.12.1, and Bun adopted with model 1.4.4 or later. Node.js 25.x, 23.x, 20.x, and earlier releases are end-of-life and won’t obtain the repair. Inside days, the story outgrew Node.js. The identical decoder is compiled into the Python Brotli and brotlicffi packages in addition to into different HTTP software program, which led researchers to rename the problem HTTP2Shell. The operational problem was due to this fact not merely upgrading a single runtime however figuring out each container, serverless deployment, and library that bundles the susceptible decoder. The problem was fastened upstream in Brotli 1.2.1. Notably, OpenAI’s Codex Safety had reported the underlying bug, and the repair had been current within the Brotli supply since February with out being acknowledged as a safety difficulty.
GitLab: Credential leaks and authorization failures
On October 21, GitLab shipped a essential out-of-band patch launch (variations 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, and 18.11.13) addressing 12 safety vulnerabilities. The headline flaw, CVE-2026-110264, rated 10.0 beneath CVSS v3.1, is an integer overflow triggered when GitLab compiles a specifically crafted common expression. Below sure situations, it may enable an unauthenticated attacker to execute arbitrary code on the server. The affected variations date again to GitLab 7.0.
The opposite fixes addressed credential publicity, cache poisoning, authorization bypasses, and failures to implement membership or merge-request approval insurance policies. Reported unauthenticated assault paths included publicity of delicate credentials by way of inner response headers and manipulation of a shared OAuth/OIDC discovery cache, whereas different points required authenticated entry. GitLab didn’t publish particular person severity scores or exploitability particulars for these points.
GitLab.com and GitLab Devoted had been already patched, so the work fell on directors of self-managed cases. GitLab strongly really useful upgrading instantly, however with a catch: the older backport releases (19.2.9, 19.1.9, 19.0.10, and 18.11.13) included solely the essential repair, whereas the remaining 11 points had been fastened solely in 19.3.6 and later. Directors additionally needed to confirm that every one deployment parts had been up to date and assess the potential publicity of credentials and personal challenge information on account of the truth that patching wouldn’t invalidate stolen credentials or reverse unauthorized adjustments.
eMudhra/emSign: Compromised certificates belief
The high-priority eMudhra/emSign incident concerned no software program vulnerability in any respect. A number of eMudhra intermediate certificates authorities (CAs) had insecure non-public keys, that means attackers may doubtlessly create certificates that will be trusted by way of the affected emSign certificates chain. Whereas browsers had up to date their belief shops and revocation lists, some Python tooling continued to belief the compromised intermediate CAs by way of its personal certificates bundles. This created a threat of man-in-the-middle (MITM) assaults towards TLS connections, together with these to python.org and pypi.org.
The Python Software program Basis urged customers to improve instantly to at the least certifi 2026.10.19, pip 26.2.2, and uv 0.13.4, and the Python core workforce shipped expedited releases 3.15.2, 3.14.10, 3.13.18, 3.12.16, and three.11.18 to replace the bundled pip. The updates needed to attain each host, utility, and current digital setting. Container pictures needed to be rebuilt with layer caching disabled to fetch the newest system certificates. The decisive examine was whether or not deployed shoppers rejected the compromised belief paths; merely upgrading Python was not sufficient.
Slicing by way of the noise
Cybersecurity Black Week confirmed {that a} severity rating not often tells the entire story. A 9.2-rated PHP flaw that attackers struggled to take advantage of, a ten.0-rated GitLab bug, uncovered kernel experiences with no patches, and a poisoned bundle that ran at Python startup every known as for a distinct response. What all of them had in frequent was a window of publicity: the time between disclosure and when the final affected system is patched. For the leaked kernel flaws, that window opened earlier than any repair existed, and for end-of-life PHP variations, it might by no means absolutely shut. That is the place ESET’s multilayered safety is available in, utilizing behavioural detection and different safety mechanisms to assist block exploitation makes an attempt and hold methods protected till patches are utilized.
On the similar time, the alerts defenders depend on had been buried in noise, from scanning that was largely benign to a single behavioural rule firing tons of of 1000’s of occasions in per week. What mattered most was shortly understanding which incidents truly affected a corporation’s setting and what every incident required. That’s the drawback ESET’s correlation engine, ESET LiveCortex, and its specialised cybersecurity mannequin, ESET NeoCortex, are designed to unravel: turning an amazing quantity of uncooked information into comprehensible incidents in order that defenders can act earlier than attackers obtain their targets. To learn the way they work, learn Past the alert: How ESET is educating AI to know safety incidents.







