Podatność w ConnMan (do wersji 1.44 włącznie) pozwala atakującemu na wywołanie awarii aplikacji lub wykonanie dowolnego kodu bez jakiegokolwiek uwierzytelnienia. Błąd wynika z nieprawidłowej obsługi odpowiedzi DNS z ustawionym bitem TC (Truncated).
▸ Pokaż oryginał (EN)
In ConnMan through 1.44, the lookup string in ns_resolv in dnsproxy.c can be NULL or an empty string when the TC (Truncated) bit is set in a DNS response. This allows attackers to cause a denial of service (application crash) or possibly execute arbitrary code, because those lookup values lead to incorrect length calculations and incorrect memcpy operations.
Gdy serwer DNS zwraca odpowiedź z ustawionym bitem TC (Truncated), funkcja ns_resolv w pliku dnsproxy.c może otrzymać ciąg lookup o wartości NULL lub pustym stringu. Takie wartości powodują nieprawidłowe obliczenia długości bufora oraz błędne operacje memcpy. W konsekwencji możliwe jest uszkodzenie pamięci, co może prowadzić do crashu procesu ConnMan lub — w sprzyjających warunkach — do wykonania dowolnego kodu.
Atakujący może spowodować awarię usługi ConnMan (DoS) lub potencjalnie wykonać dowolny kod na podatnym systemie, uzyskując możliwość jego pełnego przejęcia.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się śledzenie repozytorium projektu ConnMan (kernel.org) w celu uzyskania poprawionej wersji oraz jak najszybsze jej wdrożenie. W ramach tymczasowego obejścia warto rozważyć ograniczenie dostępu do usługi DNS proxy oferowanej przez ConnMan do zaufanych sieci.
ConnMan w wersjach do 1.44 włącznie (through 1.44)
Podatność opisana jako '0-click' w opublikowanej analizie zewnętrznej (referencja notion.so), co sugeruje możliwość wykorzystania bez interakcji użytkownika. Wektor CVSS wskazuje na atak sieciowy bez wymaganych uprawnień i bez interakcji użytkownika, przy podwyższonej złożoności ataku (AC:H) oraz zakresie wykraczającym poza komponent atakowany (S:C).
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H