Funkcja mg_tls_init w serwerze HTTPS Cesanta Mongoose (skompilowanym z obsługą mbedTLS) jest podatna na zdalny atak typu out-of-bounds write. Podatność może prowadzić do naruszenia integralności danych lub niedostępności usługi bez konieczności uwierzytelnienia.
▸ Pokaż oryginał (EN)
The mg_tls_init function in Cesanta Mongoose HTTPS server 7.0 and 6.7-6.18 (compiled with mbedTLS support) is vulnerable to remote OOB write attack via connection request after exhausting memory pool.
Atakujący wysyła żądanie połączenia do serwera HTTPS w momencie, gdy pula pamięci jest wyczerpana. W takich warunkach funkcja mg_tls_init wykonuje zapis poza granicami przydzielonego bufora (OOB write, CWE-787), co prowadzi do uszkodzenia pamięci procesu. Atak możliwy jest zdalnie, bez uwierzytelnienia i bez interakcji użytkownika.
Atakujący może doprowadzić do naruszenia integralności przetwarzanych danych lub całkowitej niedostępności serwera HTTPS (awaria procesu). W zależności od środowiska wykonawczego możliwe jest również wykonanie dowolnego kodu.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zalecana jest aktualizacja Cesanta Mongoose do wersji nowszej niż 7.0, w której problem został zgłoszony. Szczegóły dostępne w zgłoszeniu: https://github.com/cesanta/mongoose/issues/1203
Cesanta Mongoose w wersji 7.0 oraz 6.7–6.18, skompilowane z obsługą biblioteki mbedTLS (serwer HTTPS).
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:HCesanta Mongoose
APPCesanta7.06.7 – 6.18
Powiązane podatności
Zapis plików poza docelowym folderem w Cesanta Mongoose (mg_http_upload)
Zapis poza granicami pamięci (OOB write) w Cesanta Mongoose HTTP server 7.0
Zapis poza granicami pamięci (OOB write) w serwerze HTTPS Cesanta Mongoose 7.0
Buffer overflow w Cesanta Mongoose — mg_get_http_header
Integer overflow w Cesanta Mongoose — błąd parsowania pakietów MQTT