Menu

CVE-2026-97205: An 8-Bit Counter and 256 Pending AIO Operations
📰

CVE-2026-97205: An 8-Bit Counter and 256 Pending AIO Operations

DEV Community: infosec·SorrelThorncroft·2 days ago
#xw58PZch
#devtoinfosec#devto#dev#nginx#request
Reading 0:00
15s threshold

CVE-2026-97205: An 8-Bit Counter and 256 Pending AIO Operations

The NGINX use-after-free fixed in 1.30.6 and 1.31.7 is a textbook case of a counter that needed a bound and never got one. CVE-2026-97205 requires aio enabled together with SSI pages that use include virtual commands, and its root cause is a single byte.

The mechanism

When aio is on, file operations for a request become asynchronous. Each pending asynchronous operation on that request increments a counter in the request structure. That counter is eight bits wide, and nothing checks it before incrementing.

At 256 pending operations the counter wraps to zero. Once the counter reads zero, NGINX concludes that no asynchronous work remains for the request and is free to release it. The operations themselves are still outstanding, and they still hold pointers into the memory that was just returned to the pool.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.