Pylons Waitress up to 3.0.0 on Python HTTP Pipelining recv_bytes toctou
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $0-$5k | 0.00 |
Summary
A vulnerability described as problematic has been identified in Pylons Waitress up to 3.0.0 on Python. The affected element is the function recv_bytes of the component HTTP Pipelining Handler. The manipulation results in toctou.
This vulnerability is known as CVE-2024-49768. It is possible to launch the attack remotely. No exploit is available.
Upgrading the affected component is recommended.
Details
A vulnerability classified as problematic has been found in Pylons Waitress up to 3.0.0 on Python. Affected is the function recv_bytes of the component HTTP Pipelining Handler. The manipulation with an unknown input leads to a toctou vulnerability. CWE is classifying the issue as CWE-367. The product checks the state of a resource before using that resource, but the resource's state can change between the check and the use in a way that invalidates the results of the check. This can cause the product to perform invalid actions when the resource is in an unexpected state. This is going to have an impact on confidentiality, integrity, and availability. CVE summarizes:
Waitress is a Web Server Gateway Interface server for Python 2 and 3. A remote client may send a request that is exactly recv_bytes (defaults to 8192) long, followed by a secondary request using HTTP pipelining. When request lookahead is disabled (default) we won't read any more requests, and when the first request fails due to a parsing error, we simply close the connection. However when request lookahead is enabled, it is possible to process and receive the first request, start sending the error message back to the client while we read the next request and queue it. This will allow the secondary request to be serviced by the worker thread while the connection should be closed. Waitress 3.0.1 fixes the race condition. As a workaround, disable channel_request_lookahead, this is set to 0 by default disabling this feature.
The advisory is shared for download at github.com. This vulnerability is traded as CVE-2024-49768 since 10/18/2024. The exploitability is told to be difficult. It is possible to launch the attack remotely. The exploitation doesn't require any form of authentication. There are known technical details, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 210119 (SUSE SLED15 / SLES15 / openSUSE 15 Security Update : python-waitress (SUSE-SU-2024:3876-1)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 3.0.1 eliminates this vulnerability.
The vulnerability is also documented in the vulnerability database at Tenable (210119). Once again VulDB remains the best source for vulnerability data.
Product
Vendor
Name
Version
Website
- Product: https://github.com/Pylons/waitress/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.3VulDB Meta Temp Score: 7.2
VulDB Base Score: 5.6
VulDB Temp Score: 5.4
VulDB Vector: 🔍
VulDB Reliability: 🔍
CNA Base Score: 9.1
CNA Vector (GitHub_M): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: ToctouCWE: CWE-367 / CWE-362
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 210119
Nessus Name: SUSE SLED15 / SLES15 / openSUSE 15 Security Update : python-waitress (SUSE-SU-2024:3876-1)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Waitress 3.0.1
Timeline
10/18/2024 🔍10/29/2024 🔍
10/29/2024 🔍
11/02/2024 🔍
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2024-49768 (🔍)
GCVE (CVE): GCVE-0-2024-49768
GCVE (VulDB): GCVE-100-282420
Entry
Created: 10/29/2024 15:53Updated: 11/02/2024 11:26
Changes: 10/29/2024 15:53 (65), 11/02/2024 11:26 (2)
Complete: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.