Podatność typu double-free (CWE-415) w bibliotece libcurl pozwala atakującemu na wywołanie nieprzewidywalnego zachowania programu podczas komunikacji z serwerem MQTT. Ze względu na wynik CVSS 9.1 i możliwość zdalnego wykorzystania bez uwierzytelnienia, stanowi poważne zagrożenie dla systemów korzystających z protokołu MQTT przez libcurl.
▸ Pokaż oryginał (EN)
When sending data to an MQTT server, libcurl <= 7.73.0 and 7.78.0 could in some circumstances erroneously keep a pointer to an already freed memory area and both use that again in a subsequent call to send data and also free it *again*.
Podczas wysyłania danych do serwera MQTT, libcurl w wersjach 7.73.0 i 7.78.0 w pewnych okolicznościach błędnie zatrzymywało wskaźnik do obszaru pamięci, który został już zwolniony. Biblioteka następnie ponownie używała tego wskaźnika w kolejnym wywołaniu wysyłania danych, a następnie zwalniała tę samą pamięć po raz drugi. Taki scenariusz double-free prowadzi do uszkodzenia sterty (heap corruption), co może skutkować nieoczekiwanym zakończeniem procesu lub potencjalnie być wykorzystane do wykonania kodu.
Atakujący może doprowadzić do ujawnienia danych z pamięci procesu (naruszenie poufności) lub do awarii aplikacji korzystającej z libcurl (naruszenie dostępności). W skrajnych przypadkach uszkodzenie pamięci może umożliwić zdalne wykonanie kodu (RCE).
Należy zaktualizować libcurl do wersji wyższej niż 7.78.0, eliminującej opisaną podatność. Użytkownicy produktów NetApp i Fedora powinni zastosować patche dostępne u producenta zgodnie z referencjami. Zalecane jest również ograniczenie możliwości nawiązywania połączeń MQTT przez aplikacje korzystające z podatnych wersji biblioteki do czasu wdrożenia aktualizacji.
libcurl w wersjach do 7.73.0 oraz 7.78.0; dotknięte są również dystrybucje Fedora oraz produkty NetApp: Cloud Backup i Clustered Data ONTAP zawierające podatną wersję biblioteki
Raport o podatności został pierwotnie zgłoszony za pośrednictwem platformy HackerOne (raport nr 1269242). Podatność dotyczy specyficznie komunikacji protokołem MQTT — jeśli libcurl nie jest używany z MQTT, ryzyko jest niższe.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:HApple macOS
OSApple12.0.0 – 12.3 (bez)Debian
OSDebian11.0Fedora Project Fedora
OSFedoraproject3335Haxx Libcurl
APPHaxx7.73.0 – 7.78.0Netapp Cloud Backup
APPNetappwszystkie wersjeNetapp Clustered Data Ontap
APPNetappwszystkie wersjeNetapp H300e
HWNetappwszystkie wersjeNetapp H300e Firmware
OSNetappwszystkie wersjeNetapp H300s
HWNetappwszystkie wersjeNetapp H300s Firmware
OSNetappwszystkie wersjeNetapp H410s
HWNetappwszystkie wersjeNetapp H410s Firmware
OSNetappwszystkie wersjeNetapp H500e
HWNetappwszystkie wersjeNetapp H500e Firmware
OSNetappwszystkie wersjeNetapp H500s
HWNetappwszystkie wersjeNetapp H500s Firmware
OSNetappwszystkie wersjeNetapp H700e
HWNetappwszystkie wersjeNetapp H700e Firmware
OSNetappwszystkie wersjeNetapp H700s
HWNetappwszystkie wersjeNetapp H700s Firmware
OSNetappwszystkie wersjeNetapp Solidfire Baseboard Management Controller
HWNetappwszystkie wersjeNetapp Solidfire Baseboard Management Controller Firmware
OSNetappwszystkie wersjeOracle MySQL Server
APPOracle8.0.0 – 8.0.265.7.0 – 5.7.35Siemens Sinec Ins
APPSiemens< 1.0.1.1Splunk Universal Forwarder
APPSplunk9.1.08.2.0 – 8.2.12 (bez)9.0.0 – 9.0.6 (bez)
Powiązane podatności
Pominięcie uwierzytelniania w Screen Sharing na macOS
GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER
Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty
Apple iOS/iPadOS/macOS — out-of-bounds write przy przetwarzaniu obrazu
Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)