CVE-2024-8096
NoneCVSS
—
EPSS
0.8%
Published
Sep 11, 2024
CISA due date
—
Cloudanix analysis
A tool used for secure file transfers and web requests could sometimes accept faulty security checks on websites, potentially allowing connections that should have been blocked.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
curl incorrectly accepts OCSP stapling responses reporting errors other than 'revoked' (such as 'unauthorized') as valid certificate status instead of treating them as failures.
Why it matters to the business
Systems relying on curl for secure transfers may connect to servers presenting problematic certificates, raising the chance of traffic interception or use of untrusted endpoints in automated workflows and scripts.
How an attack unfolds
An attacker hosts a server returning an OCSP stapled response with a non-revocation error status; when a curl client enables the Certificate Status Request extension, the flawed validation logic accepts the response and proceeds with the TLS handshake.
How to fix it
Upgrade curl to a build containing commit a3bd1dda12ec79cd63e0d81df4ec4b1fbbbcfa1b or later; rebuild any dependent applications against the patched library.
How to confirm the fix worked
Confirm the installed curl binary reports a version built after the referenced commit; test connectivity against a server configured to return non-revocation OCSP error statuses and verify rejection occurs.
Typical attack path
- Attacker provisions a TLS server that supplies an OCSP staple indicating an error status other than revoked
- Victim client invokes curl with OCSP stapling verification enabled
- curl processes the staple and fails to flag the error condition
- TLS session completes and subsequent data exchange occurs over the untrusted connection
How to detect it
Examine application logs for successful TLS connections initiated by curl when OCSP stapling was requested; correlate with external OCSP responder logs or packet captures showing non-revocation error statuses that were nevertheless accepted.
What your security team should do
- Prioritize updating all curl installations and dependent packages to the fixed commit
- Review scripts and applications that explicitly enable OCSP stapling and consider disabling the feature where certificate revocation checking is not mandatory
- Include curl in routine dependency scanning and patch management processes
The record
When curl is told to use the Certificate Status Request TLS extension, often referred to as OCSP stapling, to verify that the server certificate is valid, it might fail to detect some OCSP problems and instead wrongly consider the response as fine. If the returned status reports another error than 'revoked' (like for example 'unauthorized') it is not treated as a bad certficate.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.18 | curl | 0 | 8.10.0-r0 |
| Alpine:v3.19 | curl | 0 | 8.10.0-r0 |
| Alpine:v3.20 | curl | 0 | 8.10.0-r0 |
| Alpine:v3.21 | curl | 0 | 8.10.0-r0 |
| Alpine:v3.22 | curl | 0 | 8.10.0-r0 |
| Chainguard | curl | 0 | 8.10.0-r0 |
| Chainguard | curl-dev | 0 | 8.10.0-r0 |
| Chainguard | curl-doc | 0 | 8.10.0-r0 |
| Chainguard | curl-oci-entrypoint | 0 | 8.10.0-r0 |
| Chainguard | curl-static | 0 | 8.10.0-r0 |
| Chainguard | libcurl-openssl4 | 0 | 8.10.0-r0 |
| Chainguard | libcurl4 | 0 | 8.10.0-r0 |
| Debian:11 | curl | 0 | No fix |
| Debian:11 | curl | 0 | 7.74.0-1.3+deb11u14 |
| Debian:12 | curl | 0 | No fix |
| Debian:13 | curl | 0 | 8.10.0-1 |
| SUSE:Linux Enterprise Installer Updates 15 SP5 | curl | 0 | 8.0.1-150400.5.50.1 |
| SUSE:Linux Enterprise Micro 5.1 | curl | 0 | 7.66.0-150200.4.78.1 |
| SUSE:Linux Enterprise Micro 5.2 | curl | 0 | 7.66.0-150200.4.78.1 |
| SUSE:Linux Enterprise Micro 5.3 | curl | 0 | 8.0.1-150400.5.50.1 |
| SUSE:Linux Enterprise Micro 5.4 | curl | 0 | 8.0.1-150400.5.50.1 |
| SUSE:Linux Enterprise Micro 5.5 | curl | 0 | 8.0.1-150400.5.50.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP5 | curl | 0 | 8.0.1-150400.5.50.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | curl | 0 | 8.6.0-150600.4.6.1 |
| SUSE:Linux Enterprise Server 12 SP5 | curl | 0 | 8.0.1-11.92.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | curl | 0 | 8.0.1-11.92.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | curl | 0 | 8.0.1-11.92.1 |
| Ubuntu:20.04:LTS | curl | 0 | 7.68.0-1ubuntu2.24 |
| Ubuntu:22.04:LTS | curl | 0 | 7.81.0-1ubuntu1.18 |
| Ubuntu:24.04:LTS | curl | 0 | 8.5.0-2ubuntu10.4 |
| Ubuntu:24.10 | curl | 0 | 8.9.1-2ubuntu2 |
| Ubuntu:25.04 | curl | 0 | 8.9.1-2ubuntu2 |
| Ubuntu:Pro:14.04:LTS | curl | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | curl | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | curl | 0 | No fix |
| Wolfi | curl | 0 | 8.10.0-r0 |
| Wolfi | curl-dev | 0 | 8.10.0-r0 |
| Wolfi | curl-doc | 0 | 8.10.0-r0 |
| Wolfi | curl-oci-entrypoint | 0 | 8.10.0-r0 |
| Wolfi | curl-static | 0 | 8.10.0-r0 |
| Wolfi | libcurl-openssl4 | 0 | 8.10.0-r0 |
| Wolfi | libcurl4 | 0 | 8.10.0-r0 |
| openSUSE:Leap 15.5 | curl | 0 | 8.0.1-150400.5.50.1 |
| openSUSE:Leap 15.6 | curl | 0 | 8.6.0-150600.4.6.1 |
| openSUSE:Leap Micro 5.5 | curl | 0 | 8.0.1-150400.5.50.1 |
| openSUSE:Tumbleweed | curl | 0 | 8.10.0-1.1 |
Related vulnerabilities
- CVE-2024-11053 When asked to both use a `.netrc` file for credentials and to follow HTTP redirects, curl… Also affects curl
- CVE-2024-9681 When curl is asked to use HSTS, the expiry time for a subdomain might overwrite a parent… Also affects curl
- CVE-2023-46219 When saving HSTS data to an excessively long file name, curl could end up removing all… Also affects curl
- CVE-2023-46218 This flaw allows a malicious HTTP server to set "super cookies" in curl that are then… Also affects curl
- CVE-2023-38545 This flaw makes curl overflow a heap based buffer in the SOCKS5 proxy handshake. Also affects curl
- CVE-2023-38546 This flaw allows an attacker to insert cookies at will into a running program using… Also affects curl
- CVE-2023-28322 An information disclosure vulnerability exists in curl <v8.1.0 when doing HTTP(S)… Also affects curl
- CVE-2023-27533 A vulnerability in input validation exists in curl <8.0 during communication using the… Also affects curl