W bibliotece tinyDTLS wchodzącej w skład projektu Contiki-NG wykryto błąd powodujący nieskończoną pętlę podczas obsługi komunikatu ClientHello w handshake DTLS. Podatność pozwala zdalnym atakującym bez uwierzytelnienia na wywołanie odmowy usługi (DoS) oraz potencjalne ujawnienie wrażliwych danych z pamięci.
▸ Pokaż oryginał (EN)
An issue was discovered in Contiki-NG tinyDTLS through master branch 53a0d97. An infinite loop bug exists during the handling of a ClientHello handshake message. This bug allows remote attackers to cause a denial of service by sending a malformed ClientHello handshake message with an odd length of cipher suites, which triggers an infinite loop (consuming all resources) and a buffer over-read that can disclose sensitive information.
Atakujący wysyła spreparowany komunikat ClientHello zawierający nieparzystą długość listy cipher suites. Nieprawidłowe dane wejściowe powodują wejście kodu obsługi handshake w nieskończoną pętlę, która konsumuje wszystkie dostępne zasoby systemowe. Równolegle dochodzi do odczytu poza granicami bufora (buffer over-read), co może prowadzić do ujawnienia wrażliwych informacji przechowywanych w pamięci procesu.
Atakujący może całkowicie unieruchomić urządzenie lub proces używający biblioteki tinyDTLS (DoS), a także potencjalnie uzyskać dostęp do wrażliwych danych z pamięci poprzez wykorzystanie błędu buffer over-read.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się aktualizację biblioteki tinyDTLS do wersji zawierającej poprawkę błędu obsługi pola cipher suites w komunikacie ClientHello oraz monitorowanie publicznie dostępnych repozytoriów projektu Contiki-NG pod kątem wydania łatki.
Contiki-NG tinyDTLS — gałąź master do commitu 53a0d97 włącznie
Szczegóły techniczne podatności zostały opublikowane w serwisie Full Disclosure (seclists.org) w styczniu 2024 roku.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:HContiki Ng Tinydtls
APPContiki-Ng≤ 2018-08-30
Powiązane podatności
Buffer over-read w Contiki-NG tinyDTLS — zdalne DoS przez spreparowany pakiet
Nieprawidłowa obsługa dużego numeru epoki w Contiki-NG tinyDTLS — DoS i fałszywe odrzucanie pakietów
Błąd obsługi handshake DTLS w Contiki-NG tinyDTLS — denial of service
An assertion failure discovered in in check_certificate_request() in Contiki-NG tinyDTLS through master branch...
An issue was discovered in Contiki-NG tinyDTLS through master branch 53a0d97. DTLS servers allow remote attack...