CVE-2026-128124 in aiohttpinfo

Summary

by MITRE • 11/13/2026

AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.4, Application.add_domain() converts every asterisk wildcard in a domain mask into a greedy regular-expression fragment, so a mask containing two or more wildcards can take polynomial time to reject a long Host header that does not match. A remote attacker can repeatedly send such headers to a server configured with a multi-wildcard domain mask and stall the event loop. This issue is fixed in version 3.14.4.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 11/13/2026

The vulnerability identified in aiohttp versions prior to 3.14.4 represents a significant availability risk stemming from improper input validation within the Application.add_domain() method. Aiohttp, widely used for building asynchronous web services and clients in Python, relies on domain matching logic to route incoming HTTP requests based on their Host headers. The core technical flaw lies in how the framework processes wildcard characters within these domain masks. Specifically, when a developer configures a domain mask containing multiple asterisk wildcards, the internal implementation converts each asterisk into a greedy regular-expression fragment rather than using efficient string matching algorithms or non-greedy patterns. This design choice fundamentally alters the computational complexity of the pattern-matching process during request handling.

The operational impact of this flaw is severe for systems relying on aiohttp to handle high volumes of traffic, particularly in environments where domain-based routing is active with multi-wildcard configurations. When a remote attacker sends HTTP requests featuring Host headers that do not match the configured mask but are sufficiently long and crafted to trigger backtracking behavior inherent in greedy regular expressions, the server's event loop becomes stalled. This phenomenon, often referred to as Regular Expression Denial of Service or ReDoS, causes the asynchronous task scheduler to hang because it cannot yield control to other pending tasks while resolving the complex pattern match. Consequently, this leads to a complete denial of service for all connections handled by that specific server instance, effectively freezing the application and preventing legitimate users from accessing services.

From an industry standards perspective, this vulnerability aligns with CWE-400, which describes uncontrolled resource consumption leading to exhaustion of resources such as CPU or memory. The attack vector is classified under MITRE ATT&CK technique T1496, Resource Hijacking, specifically within the context of computational energy hijacking where an attacker forces a system to expend excessive processing power on malicious inputs. The exploitation requires only network access and does not necessitate authentication, making it particularly dangerous for public-facing APIs or web services that accept arbitrary Host headers from clients.

Mitigation strategies primarily involve upgrading the aiohttp library to version 3.14.4 or later, where this logic has been corrected to prevent polynomial-time rejection of non-matching inputs. For organizations unable to immediately patch their dependencies, defensive coding practices should be implemented at the reverse proxy level, such as Nginx or Apache, which can validate and normalize Host headers before they reach the Python application layer. Additionally, developers should audit configurations for domain masks containing multiple wildcards and consider simplifying these patterns where possible to reduce complexity in matching logic. Monitoring server metrics for unusual spikes in CPU usage correlated with specific HTTP requests can also aid in detecting ongoing exploitation attempts of this vulnerability.

Responsible

GitHub M

Reservation

11/12/2026

Disclosure

11/13/2026

Moderation

accepted

CPE

ready

EPSS

0.00520

KEV

no

Activities

very low

Sources

Want to know what is going to be exploited?

We predict KEV entries!