CVE-2024-49768CWE-367CWE-444

Waitress has request processing race condition in HTTP pipelining with invalid first request

Critical · published October 29, 2024

CVSS v3.1
9.1
EPSS
0%
Percentile
40.8
In the wild
Unconfirmed
What it is

🚨 A crafty HTTP pipelining trick can turn a single request into a chaotic two-for-one special! 🔥 Think of it like a restaurant where one diner orders first but sneaks a second order in before the waiter attends to the first. If the waiter gets confused and serves the second order while closing the tab for the first, it leads to a chaotic mess of mismatched meals! An attacker could exploit this race condition to sneak in a second request, potentially allowing them to bypass intended connection closures and manipulate server responses. This could lead to unauthorized access or serve up the wrong data, creating a recipe for disaster!

Put simply

Think of it like a restaurant where one diner orders first but sneaks a second order in before the waiter attends to the first. If the waiter gets confused and serves the second order while closing the tab for the first, it leads to a chaotic mess of mismatched meals! The vulnerability in Waitress arises when request lookahead is enabled, allowing attackers to send a malformed request followed by a secondary one that the server processes incorrectly. This can lead to unexpected behavior while the connection should have been closed.

What to do

An attacker could exploit this race condition to sneak in a second request, potentially allowing them to bypass intended connection closures and manipulate server responses. This could lead to unauthorized access or serve up the wrong data, creating a recipe for disaster! To protect your application, update to Waitress version 3.0.1 immediately to fix this critical race condition. Alternatively, you can disable request lookahead by setting the channel_request_lookahead to 0, which is the default setting. Review and test your server configurations to ensure security! You got this! Implement these fixes and keep your server safe and sound! 🛡️

The record
Technical detail
CVSS v3.1
9.1 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
CVSS v4.0
Not supplied
EPSS
0.00486 · 40.8th percentile
Weaknesses
CWE-367 · Time-of-check Time-of-use (TOCTOU) Race Condition; CWE-444 · Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')
Published
2024-10-29T14:32Z
EPSS history
Timeline
  • 29 OCT 14:32Z
    Waitress has request processing race condition in HTTP pipelining with invalid first request
    cvelistv5