// For flags

CVE-2024-2004

Usage of disabled protocol

Severity Score

3.5
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

When a protocol selection parameter option disables all protocols without adding any then the default set of protocols would remain in the allowed set due to an error in the logic for removing protocols. The below command would perform a request to curl.se with a plaintext protocol which has been explicitly disabled. curl --proto -all,-http http://curl.se The flaw is only present if the set of selected protocols disables the entire set of available protocols, in itself a command with no practical use and therefore unlikely to be encountered in real situations. The curl security team has thus assessed this to be low severity bug.

Cuando una opción de parámetro de selección de protocolo deshabilita todos los protocolos sin agregar ninguno, el conjunto predeterminado de protocolos permanecería en el conjunto permitido debido a un error en la lógica para eliminar protocolos. El siguiente comando realizaría una solicitud a curl.se con un protocolo de texto plano que ha sido explícitamente deshabilitado. curl --proto -all,-http http://curl.se La falla solo está presente si el conjunto de protocolos seleccionados desactiva todo el conjunto de protocolos disponibles, lo que en sí mismo es un comando sin uso práctico y, por lo tanto, es poco probable que se encuentre en situaciones reales. Por lo tanto, el equipo de seguridad de curl ha evaluado que se trata de un error de baja gravedad.

A flaw was found in curl. When a protocol selection parameter disables all protocols without adding any, the default set of protocols remains in the allowed set due to a logic error, allowing usage of disabled protocols.

USN-6718-1 fixed vulnerabilities in curl. This update provides the corresponding updates for Ubuntu 24.04 LTS. Dan Fandrich discovered that curl would incorrectly use the default set of protocols when a parameter option disabled all protocols without adding any, contrary to expectations. This issue only affected Ubuntu 23.10. It was discovered that curl incorrectly handled memory when limiting the amount of headers when HTTP/2 server push is allowed. A remote attacker could possibly use this issue to cause curl to consume resources, leading to a denial of service.

*Credits: Dan Fandrich, Daniel Gustafsson
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low
Attack Vector
Local
Attack Complexity
Low
Authentication
Single
Confidentiality
Partial
Integrity
Partial
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-02-29 CVE Reserved
  • 2024-03-27 CVE Published
  • 2025-02-13 CVE Updated
  • 2025-03-30 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-115: Misinterpretation of Input
  • CWE-436: Interpretation Conflict
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.6.0
Search vendor "Curl" for product "Curl" and version "8.6.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.5.0
Search vendor "Curl" for product "Curl" and version "8.5.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.4.0
Search vendor "Curl" for product "Curl" and version "8.4.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.3.0
Search vendor "Curl" for product "Curl" and version "8.3.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.2.1
Search vendor "Curl" for product "Curl" and version "8.2.1"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.2.0
Search vendor "Curl" for product "Curl" and version "8.2.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.1.2
Search vendor "Curl" for product "Curl" and version "8.1.2"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.1.1
Search vendor "Curl" for product "Curl" and version "8.1.1"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.1.0
Search vendor "Curl" for product "Curl" and version "8.1.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.0.1
Search vendor "Curl" for product "Curl" and version "8.0.1"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
8.0.0
Search vendor "Curl" for product "Curl" and version "8.0.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
7.88.1
Search vendor "Curl" for product "Curl" and version "7.88.1"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
7.88.0
Search vendor "Curl" for product "Curl" and version "7.88.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
7.87.0
Search vendor "Curl" for product "Curl" and version "7.87.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
7.86.0
Search vendor "Curl" for product "Curl" and version "7.86.0"
en
Affected
Curl
Search vendor "Curl"
Curl
Search vendor "Curl" for product "Curl"
7.85.0
Search vendor "Curl" for product "Curl" and version "7.85.0"
en
Affected