IM
IronMonkey Threat Research

CVE-2023-38546 LOW

Published: 2023-10-18 | Last Modified: 2026-05-12 | Status: Modified

Description

This flaw allows an attacker to insert cookies at will into a running program using libcurl, if the specific series of conditions are met. libcurl performs transfers. In its API, an application creates "easy handles" that are the individual handles for single transfers. libcurl provides a function call that duplicates en easy handle called [curl_easy_duphandle](https://curl.se/libcurl/c/curl_easy_duphandle.html). If a transfer has cookies enabled when the handle is duplicated, the cookie-enable state is also cloned - but without cloning the actual cookies. If the source handle did not read any cookies from a specific file on disk, the cloned version of the handle would instead store the file name as `none` (using the four ASCII letters, no quotes). Subsequent use of the cloned handle that does not explicitly set a source to load cookies from would then inadvertently load cookies from a file named `none` - if such a file exists and is readable in the current directory of the program using libcurl. And if using the correct file format of course.

Additional Descriptions (1)

Esta falla permite a un atacante insertar cookies a voluntad en un programa en ejecución usando libcurl, si se cumple una serie específica de condiciones. libcurl realiza transferencias. En su API, una aplicación crea "easy handles" que son identificadores individuales para transferencias individuales. libcurl proporciona una llamada de función que duplica un identificador sencillo llamado [curl_easy_duphandle](https://curl.se/libcurl/c/curl_easy_duphandle.html). Si una transferencia tiene cookies habilitadas cuando el identificador está duplicado, el estado de habilitación de cookies también se clona, pero sin clonar las cookies reales. Si el identificador de origen no leyó ninguna cookie de un archivo específico en el disco, la versión clonada del identificador almacenaría el nombre del archivo como "none" (usando las cuatro letras ASCII, sin comillas). El uso posterior del identificador clonado que no establece explícitamente una fuente desde la cual cargar cookies cargaría inadvertidamente cookies desde un archivo llamado "none", si dicho archivo existe y es legible en el directorio actual del programa usando libcurl. Y si utiliza el formato de archivo correcto, por supuesto.

CVSS Metrics

Base Score: 3.7 (LOW)

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N

Attack VectorNETWORK
Attack ComplexityHIGH
Privileges RequiredNONE
User InteractionNONE
ScopeUNCHANGED
Confidentiality ImpactNONE
Integrity ImpactLOW
Availability ImpactNONE

Source: [email protected]

Type: Primary

Exploitability Score: 2.2

Impact Score: 1.4

Weaknesses

Source Type Description
[email protected] Primary
en NVD-CWE-noinfo

Affected Products

Vendor Product Version Update Type
haxx libcurl * <built-in method update of dict object at 0x702bcbcf2ac0> Application

Affected Configurations

Operator: OR

Vulnerable CPE
Yes cpe:2.3:a:haxx:libcurl:*:*:*:*:*:*:*:*

References

Notification
Message here