HTTP/2 Bomb DoS: AI-Assisted Memory Exhaustion Threat to IIS and Major Web Servers

On June 3, 2026, researchers at Calif disclosed “HTTP/2 Bomb,” a denial-of-service technique reportedly found with OpenAI Codex that can exhaust memory on default HTTP/2 deployments of nginx, Apache httpd, Microsoft IIS, Envoy, and Cloudflare Pingora. The uncomfortable lesson is not that AI suddenly invented a new class of vulnerability. It is that modern web infrastructure has become complicated enough that old weaknesses can be recombined into failures the ecosystem did not collectively model. For WindowsForum readers, the IIS angle matters, but the broader story is about every administrator who assumed HTTP/2 was a solved operational risk because it has been in production for years.

Cybersecurity infographic showing HTTP/2 multiplexing issues, server load, and patch recommendations.Codex Did Not Create the Bomb, It Found the Missing Fuse​

The most sensational version of this story is easy to write: an AI coding agent discovers an attack that can knock major web servers offline in seconds. That framing will travel well because it contains all the ingredients of 2026 security anxiety: AI agents, critical infrastructure, and a bug class that sounds more like ordnance than protocol engineering.
But the more useful reading is less cinematic. According to the disclosure and follow-up reporting, Codex helped researchers identify a damaging combination of two known ideas: HPACK compression amplification and a Slowloris-style resource hold. Neither component is exotic to protocol engineers. What appears to be new is the way the two fit together cleanly enough to defeat assumptions embedded in default server behavior.
That distinction matters. AI did not need to synthesize a novel cryptographic break or reverse-engineer a proprietary black box. It helped connect pieces that humans already understood in isolation. In security terms, that is both less magical and more alarming, because a great deal of defensive engineering still treats known attack patterns as separable problems.
The result is an availability bug with a depressingly practical profile. The attacker does not need a botnet. The researchers say a normal home connection can be enough to make vulnerable servers unusable within seconds or under a minute, depending on the target software and configuration. That puts HTTP/2 Bomb in the category of attacks that are dangerous not because they are elegant, but because they are cheap.

HTTP/2’s Efficiency Becomes the Attacker’s Multiplier​

HTTP/2 was designed to make the web faster and more efficient. It multiplexes streams over a single connection, compresses headers, and reduces redundant chatter that made older HTTP traffic noisy and inefficient. Those are good properties for performance, but in security engineering every performance optimization asks a second question: who gets to spend less work, and who is forced to spend more?
The compression piece of HTTP/2 Bomb targets HPACK, the header compression system used by HTTP/2. HPACK maintains a dynamic table so repeated headers do not need to be sent again in full. A client can send a compact reference to something already in the table, and the server expands it back into the full header representation.
That is normally a win. The same cookie, authorization metadata, user-agent fields, and other repetitive header material can be represented compactly on the wire. At internet scale, shaving repeated bytes is meaningful.
The problem is that compression is always a bargain with asymmetry. A small encoded input can trigger a larger decoded output. In a benign system, that asymmetry saves bandwidth. In an adversarial system, it can become an amplifier.
HTTP/2 Bomb exploits that asymmetry by placing a header into the dynamic table and repeatedly referencing it using very small indexed representations. The attacker sends little; the server allocates much more. Reports from the researchers describe the server-side allocation cost as ranging from roughly dozens of bytes per wire byte in some implementations to thousands of bytes in others.
That is the “bomb” half of the name. It is not a bandwidth flood in the classic sense. It is a request pattern that convinces the server to convert a modest trickle of traffic into a large and growing memory burden.

Slowloris Still Haunts the Modern Stack​

The second half of the attack is older in spirit. Slowloris-style denial of service is based on holding server resources open for as long as possible while doing as little work as possible. Instead of overwhelming a target with raw traffic volume, the attacker starves it by keeping connections or requests in a state that the server must continue to remember.
HTTP/2 Bomb adapts that idea to HTTP/2 flow control. In the reported attack flow, the client advertises a zero-byte flow-control window. That prevents the server from completing the response in the normal way. The request remains unresolved, and the memory allocated during header expansion is not promptly released.
This is the crucial chain. Compression amplification creates the memory pressure. Flow-control stalling keeps that memory pinned. One primitive makes the server allocate; the other prevents normal cleanup.
That is why the attack is more severe than either ingredient alone. A compression bomb that is quickly processed and freed may be painful but bounded. A resource hold without strong amplification may require many clients or a long dwell time. Together, the attacker gets a low-bandwidth way to accumulate server memory at frightening speed.
For defenders, this is a reminder that “known issue” does not mean “contained issue.” Protocol features interact. Defaults interact. Limits that seem reasonable for one layer can be useless if another layer changes the unit of cost.

The Vendor List Turns This From Bug Report Into Infrastructure Event​

The disclosed affected list is what makes HTTP/2 Bomb more than a niche protocol curiosity. nginx, Apache HTTP Server, Microsoft IIS, Envoy, and Cloudflare Pingora cover a wide range of the modern web: traditional web hosting, Windows Server deployments, reverse proxies, service meshes, edge infrastructure, and high-performance proxy stacks.
That breadth is important because the bug is not simply “one vendor forgot a bounds check.” Different codebases appear to have manifested the same class of failure under default HTTP/2 behavior. When unrelated implementations line up that way, the problem usually lives partly in the shared mental model.
The reported test results are stark. Envoy 1.37.2 was said to exhaust 32GB of RAM in about 10 seconds. Apache httpd 2.4.67 reportedly hit 32GB in about 18 seconds. nginx 1.29.7 reportedly reached the same mark in about 45 seconds. IIS on Windows Server 2025 reportedly exhausted 64GB in about 45 seconds.
These numbers should be treated as lab results rather than guarantees about every production network. Real deployments may have front-end protection, connection limits, tuned buffers, cloud load balancers, or upstream mitigations that change the outcome. But even as directional evidence, they are enough to move this from “interesting” to “patch window now.”
The Windows Server detail deserves particular attention. IIS is often deployed behind load balancers, WAFs, or reverse proxies in enterprise environments, but it is also common in internal applications, legacy business systems, and line-of-business portals where HTTP/2 may have been enabled as part of a platform modernization push. Those are exactly the environments where availability risks become business risks before anyone has time to debate protocol elegance.

Defaults Are the Real Attack Surface​

Security advisories often focus on versions, CVEs, and patches. Administrators need those details, but HTTP/2 Bomb is also an indictment of defaults. The reported vulnerable behavior exists in default HTTP/2 configurations across major servers, which means many organizations may be exposed not because they made a reckless choice, but because they accepted a vendor’s baseline.
Defaults are powerful because they encode trust. A default says, implicitly, “this is the configuration suitable for most people.” When the default includes a complex protocol feature such as HTTP/2, it also says that the vendor has thought through the typical abuse cases well enough for general deployment.
That assumption is under pressure here. HTTP/2 is no longer new, and the ingredients of this attack have been discussed for years. HPACK bombs and Slowloris-style holds were not discovered yesterday. Yet the combination still reportedly worked against mainstream stacks.
This is how mature systems fail. Not through ignorance of every component, but through incomplete accounting of composition. One team limits header table size. Another assumes flow control is about fairness and backpressure, not memory retention. A third designs request lifecycle cleanup around completion paths that an attacker can deliberately prevent.
For sysadmins, the lesson is practical and slightly grim. If a protocol feature materially expands the server’s state machine, assume its safe default is provisional. That does not mean disabling every modern feature. It means treating default enablement as the beginning of hardening, not the end.

The AI Angle Is Less About Cyber Doom Than Security Labor​

The role of OpenAI Codex will dominate some discussion because it is the novel element. That is understandable. A coding agent helping discover a high-impact denial-of-service chain across major web servers is a legitimate marker in the evolution of security research.
Still, the worst interpretation would be to treat this as proof that AI has crossed a simple line from “assistant” to “attacker.” Offensive security has always benefited from automation. Fuzzers, symbolic execution, static analyzers, protocol test harnesses, and custom scripts have been finding bugs for decades. Codex belongs in that lineage, even if its interface feels more conversational and its generality feels more unsettling.
The important shift is that AI agents lower the cost of exploring combinations. A human researcher can ask a model to inspect code, reason about protocol behavior, propose variants, generate test cases, and iterate on failures. That compresses the time between “I wonder if these two old things interact” and “here is a proof of concept.”
That acceleration cuts both ways. Defenders can use the same tools to audit configurations, generate regression tests, and search for unsafe assumptions. Attackers can use them to industrialize bug chaining. The technology does not pick a side; incentives do.
HTTP/2 Bomb is therefore less a story about AI malice than about security labor becoming cheaper. When the cost of hypothesis generation drops, old assumptions get retested. The internet has many old assumptions.

Availability Bugs Deserve More Respect Than They Get​

Denial-of-service vulnerabilities often receive a quieter response than remote code execution flaws. That hierarchy makes sense in one narrow way: arbitrary code execution can lead to data theft, lateral movement, persistence, and total compromise. Availability bugs usually do not hand an attacker the keys.
But availability is not a second-class security property for the people who operate services. A web server that can be pushed into memory exhaustion by one client is a serious operational liability. If that server fronts identity, payment, health care, manufacturing, public services, or internal business workflows, “only DoS” is cold comfort.
The economics also differ. Many organizations have built DDoS defenses around volumetric attacks: large traffic floods, botnets, reflection, amplification across network protocols, and upstream scrubbing. HTTP/2 Bomb is more application-layer and state-focused. It asks whether the server can be made to spend far more memory than the attacker spends bandwidth.
That is a harder class of problem to outsource entirely to bandwidth providers. Edge defenses can help, and strict proxy behavior may be decisive, but the origin and intermediary stacks still need sane limits. Memory is a local resource, and local resource accounting has to be correct.
This is particularly true in cloud environments. Autoscaling can sometimes absorb load, but it can also convert an attack into a bill. If each instance can be memory-starved quickly, scaling out may simply provide more targets unless the front door filters the behavior.

Windows Server Admins Should Not Wait for the Perfect Advisory​

The IIS mention will put Windows administrators in a familiar position: watching a cross-platform protocol issue while waiting for the vendor-specific patch and guidance to settle. The user-supplied report says patches for Microsoft IIS and Cloudflare Pingora were not yet available at publication time, while nginx, Apache, and Envoy had reportedly fixed their side. That patch status may change quickly, so administrators should verify current vendor guidance before making production decisions.
In the meantime, the defensive posture is not mysterious. If HTTP/2 is unnecessary on a given IIS deployment, disabling it reduces exposure. If HTTP/2 is required, placing a proxy, load balancer, or firewall in front of IIS that enforces strict limits on headers, streams, connection behavior, and flow-control abuse becomes more important.
The hard part is inventory. Many Windows shops know which servers run IIS, but not always which ones negotiate HTTP/2, which are exposed externally, which sit behind protective intermediaries, and which internal apps quietly gained HTTP/2 through OS or framework defaults. That uncertainty is where emergency change windows become messy.
Administrators should also be wary of assuming that an upstream proxy automatically solves the problem. A proxy can protect an origin if it terminates HTTP/2 and enforces sane limits before forwarding. But if the proxy itself is vulnerable, or if it tunnels problematic behavior downstream, the protective layer may simply become the first component to fall over.
The safest immediate work is therefore boring and concrete: identify internet-facing HTTP/2 endpoints, determine the terminating component, check version and patch status, review memory and connection limits, and test whether disabling HTTP/2 has unacceptable user impact. In many enterprise apps, the performance benefit of HTTP/2 is real but not existential. Availability during an active exploit wave is existential.

Proxies Are Not Magic Shields​

The recommendation to put strict proxies or firewalls in front of vulnerable servers is sensible, but it should not become another comforting default. HTTP/2 Bomb reportedly affects proxy technologies too, including Envoy and Pingora. That means the architecture diagram matters.
A reverse proxy that normalizes traffic, caps decompressed header memory, limits concurrent streams, and refuses pathological flow-control behavior can blunt this attack. A reverse proxy that accepts the same malicious pattern and exhausts its own memory merely moves the crash from the origin to the edge. In some environments that is still better, because edge tiers are easier to scale or isolate, but it is not a fix.
This is where service-mesh and microservices shops need to pay attention. Envoy is widely used as a sidecar and gateway in modern infrastructure. If the vulnerable behavior exists in a default Envoy configuration, then the blast radius may include internal east-west traffic paths, not just public ingress.
Internal denial of service is often underestimated. Organizations tend to harden the public edge first and assume the inside is friendlier. But compromised workloads, malicious insiders, misconfigured test clients, and automated scanners all operate inside networks. A cheap memory-exhaustion primitive inside a mesh can become a reliability incident even without an internet-facing exploit.
The operational question is not “Do we have a proxy?” It is “Which component terminates HTTP/2, what limits does it enforce after decompression, and how does it behave when a client stops receiving?” Those are more annoying questions, but they are the ones this disclosure makes unavoidable.

The Protocol Spec Is Not the Operational Budget​

One of the recurring traps in protocol implementation is confusing specification compliance with resource safety. A server can obey the letter of a protocol and still make terrible local allocation decisions. HTTP/2 Bomb appears to live in that gap.
HPACK has bounds, including dynamic table sizing. HTTP/2 has flow control. These mechanisms are not absent. The issue is that bounds at one abstraction level do not necessarily map to safe memory use at another. A compressed representation may be within protocol limits while its decoded handling creates expensive server-side state.
This is not unique to HTTP/2. Compression, parsing, decompression, serialization, multiplexing, and caching routinely create mismatches between input size and processing cost. Attackers search for those mismatches because they turn small actions into large consequences.
A mature implementation therefore needs budget enforcement at the point where the real cost is paid. If a one-byte reference can cause thousands of bytes of allocation, the relevant limit is not just the one byte. If a stalled flow-control window keeps memory alive, the relevant timeout is not just connection idleness. If many streams share one connection, the relevant unit is not just connection count.
That is why “strict header limits” sounds simple but is deceptively rich. Limits need to account for decompressed size, dynamic-table behavior, per-stream memory, per-connection memory, total worker memory, and cleanup under stalled responses. The protocol gives implementers mechanisms. It does not automatically give them safe economics.

Patch Status Will Move Faster Than Change Control​

The disclosure timeline already shows the usual split between open-source velocity, vendor coordination, and enterprise deployment reality. Reports say nginx, Apache, and Envoy have fixes available or have addressed the issue, while IIS and Pingora patch availability was less clear at the time of the initial public reports. By the time many organizations read this, some of those details may have changed.
That is normal, and it is exactly why administrators should not treat a news article as the patch matrix. The right move is to check the official channels for each component in the request path. In a typical enterprise, that may include the public CDN, cloud load balancer, ingress controller, reverse proxy, web server, application framework, and any service-mesh sidecar.
The uncomfortable part is that patching one component may not eliminate exposure if another HTTP/2 terminator remains vulnerable. A Windows-hosted application behind Envoy, for example, may be protected from IIS exposure but still dependent on Envoy’s behavior. An nginx reverse proxy in front of Apache may shift the vulnerable surface depending on which component accepts HTTP/2 from clients.
Version pinning adds another wrinkle. Some organizations intentionally hold back on web server upgrades for stability reasons. That caution is rational, but it collides with protocol-level DoS bugs because attackers do not need deep application knowledge. If a proof of concept exists and the vulnerable behavior is default, old “stable” versions can become the riskiest versions very quickly.
Mitigations may be the bridge. Disabling HTTP/2 at the edge, lowering header and stream limits, enforcing connection windows, or using protective front ends can reduce risk while formal updates move through testing. But mitigations should be tracked like emergency changes, not tribal memory. Six months from now, someone will ask why HTTP/2 is disabled on a cluster, and the answer should not be “because Dave remembers a thing.”

The Internet Keeps Relearning Composition Risk​

HTTP/2 Bomb belongs to a long line of vulnerabilities where the individual pieces were understood, but their composition produced surprise. That is the story of many security failures in mature systems. Complexity does not merely add more code; it adds more relationships between code paths.
Web servers are especially exposed to this because they sit at the boundary between hostile input and expensive internal behavior. Every request asks the server to parse, allocate, route, authenticate, log, compress, cache, and respond. HTTP/2 made that boundary more efficient, but also more stateful.
State is where denial-of-service attacks thrive. Stateless systems can drop and forget. Stateful systems must remember who said what, which stream is open, what table entries exist, what flow-control window applies, and which buffers cannot yet be released. The more state a protocol requires, the more carefully implementations must account for adversarial clients that manipulate state without intending to complete useful work.
This is why old attacks keep returning in updated clothes. Slowloris was not a one-off trick from a simpler web era. It was a demonstration of a broader principle: if the server reserves scarce resources for clients that can delay completion cheaply, the attacker can win with patience instead of bandwidth. HTTP/2 Bomb adds compression amplification to that principle.
The lesson is not that HTTP/2 is bad. The web needed better multiplexing and header efficiency. The lesson is that protocol evolution shifts the denial-of-service frontier. Defenses that made sense for HTTP/1.1 do not automatically carry over to HTTP/2, and they certainly will not automatically carry over to HTTP/3 and QUIC.

The Codex Footnote Will Become the Headline Anyway​

Even if practitioners focus on mitigation, the public conversation will likely orbit around Codex. That is because AI-assisted vulnerability discovery changes the psychology of defense. Organizations can accept that elite researchers find weird bugs. They are less prepared for a world where agents help moderately skilled researchers explore weird combinations at scale.
That does not mean every AI-generated exploit will be good. Models hallucinate, misunderstand code, and propose nonsense. But security research has never required every hypothesis to be good. It requires enough cheap hypotheses that some are worth testing.
Codex’s reported role in HTTP/2 Bomb is therefore a preview of a busier vulnerability market. Agents can help read source, compare implementations, generate malformed protocol traffic, summarize old CVEs, and suggest chains between mitigations that were designed independently. That is exactly the kind of work that used to be limited by human attention.
The defensive answer cannot simply be “ban AI” or “hope responsible researchers get there first.” Vendors need to run the same style of agent-assisted review against their own products. Open-source projects need CI tests that encode not just known regressions, but resource-budget invariants. Enterprises need to assume that obscure default behavior will be probed more often than before.
AI did not make HTTP/2 stateful. It did not design HPACK. It did not invent Slowloris. But it may have helped make the overlooked connection visible, and that is enough to change the tempo.

The Practical Reading for WindowsForum Readers​

For this audience, the immediate issue is not philosophical. It is whether systems you run can be knocked over by a cheap HTTP/2 request pattern, and whether you know where HTTP/2 terminates in your environment. That includes Windows Server and IIS, but it also includes Linux proxies, cloud ingress, Kubernetes gateways, WAFs, and CDN edges that may sit in front of Windows workloads.
The first mistake would be treating the IIS mention as someone else’s problem until Microsoft ships a neatly packaged answer. The second would be treating the nginx, Apache, or Envoy fix as irrelevant because the application itself runs on Windows. Modern Windows services are often surrounded by non-Windows infrastructure.
The defensive priority is to collapse uncertainty. Find the internet-facing endpoints. Confirm whether they negotiate HTTP/2. Identify the terminating software and version. Apply vendor fixes where available. Where fixes are not available or cannot be deployed immediately, reduce exposure with configuration changes that limit decompressed headers, streams, connections, and stalled response behavior.
There is also a monitoring angle. Memory exhaustion that happens in seconds may not leave much time for human response, but telemetry can still show attempts, failed handshakes, abnormal HTTP/2 frame behavior, connection buildup, and sudden worker memory growth. Security teams should make sure operations teams know what an application-layer DoS looks like in their logs, not just in a network graph.
The most important operational habit is skepticism toward invisible defaults. If HTTP/2 is enabled because the platform enabled it, document why it is needed. If it is not needed, turn it off until the stack is patched and tested. That is not anti-modernization. It is ordinary attack-surface management.

A Few Checks Before the Next Memory Graph Falls Off a Cliff​

This incident is still moving, and the exact patch picture will vary by product and deployment. But the practical shape is already clear enough for administrators to act before perfect certainty arrives.
  • Confirm which public and internal services negotiate HTTP/2, including endpoints behind CDNs, load balancers, reverse proxies, Kubernetes ingress controllers, and IIS front ends.
  • Verify the patch status of every HTTP/2-terminating component, not just the origin web server that hosts the application.
  • Disable HTTP/2 where it is not operationally required, especially on exposed services awaiting vendor fixes or change-control approval.
  • Enforce strict limits on decompressed header size, concurrent streams, per-connection memory, and stalled responses wherever the platform allows it.
  • Treat proxy-based mitigation as effective only when the proxy itself is patched or configured to reject the abusive pattern before it consumes dangerous amounts of memory.
  • Add monitoring for sudden HTTP/2 connection buildup, abnormal memory growth, and repeated flow-control stalls so exploitation attempts do not look like generic server instability.
HTTP/2 Bomb is not the end of HTTP/2, and it is not proof that AI agents have made defense impossible. It is a sharper warning: the web’s performance machinery is also an attack surface, and the combinations matter as much as the components. The next generation of security work will be less about memorizing individual bug classes and more about testing how they compose under real defaults, because attackers — human, AI-assisted, or both — are clearly going to do the same.

References​

  1. Primary source: GIGAZINE
    Published: 2026-06-04T04:40:22.763782
  2. Related coverage: cryptika.com
  3. Related coverage: blog.actipace.com
  4. Related coverage: secnews.gr
  5. Related coverage: bleepingcomputer.com
  6. Related coverage: securityweek.com
  1. Related coverage: blog.calif.io
  2. Related coverage: cybertechnologyinsights.com
  3. Related coverage: redsecuretech.co.uk
  4. Related coverage: ciberseguranca.org
  5. Related coverage: cyberkendra.com
 

Back
Top