CVE-2026-69186
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 42 - wyżej niż 42% wszystkich znanych CVE
Streszczenie
W bibliotece c-ares przed wersją 1.34.7 funkcja ares_dns_parse() ufała polom ANCOUNT, NSCOUNT i ARCOUNT kontrolowanym przez atakującego, zanim potwierdziła, że odpowiedź DNS zawiera wystarczającą liczbę bajtów. Złośliwa odpowiedź DNS mogła powodować rezerwację nieproporcjonalnie dużej pamięci sterty dla małej wiadomości, prowadząc do degradacji lub odmowy rozwiązywania nazw.
Ocena ryzyka
Powtarzane złośliwe odpowiedzi DNS mogą wyczerpać pamięć i zakłócić rozwiązywanie nazw w aplikacjach korzystających z c-ares, powodując odmowę usługi.
Rekomendacja
Zaktualizuj c-ares do wersji 1.34.7 lub nowszej, która waliduje liczbę rekordów przed alokacją pamięci.
Inne podatności w c-ares
Zobacz wszystkie- CVE-2017-1000381Wysokie
Funkcja `ares_parse_naptr_reply()` w bibliotece c-ares może odczytywać pamięć poza podanym buforem wejściowym, jeśli przekazany pakiet odpowiedzi DNS został odpowiednio skonstruowany.
- CVE-2016-5180Krytyczne
W funkcji ares_create_query w c-ares w wersjach 1.x przed 1.12.0 występuje przepełnienie bufora oparte na stercie, które pozwala zdalnym atakującym na spowodowanie odmowy usługi lub potencjalne wykonanie dowolnego kodu poprzez nazwę hosta z ucieczką na końcu.
- CVE-2026-69184Wysokie
c-ares to asynchroniczna biblioteka resolvera DNS. W wersjach przed 1.34.7 funkcja ares_dns_name_parse() wymusza wsteczne wskaźniki kompresji DNS, ale nie ogranicza całkowitej liczby przeskoków wskaźników ani długości składanej nazwy. Złośliwy serwer DNS może wysłać odpowiedź z długim łańcuchem zstępujących wskaźników i wieloma rekordami zasobów, powodując powtarzalną dekompresję o złożoności kwadratowej.
- CVE-2026-33630Wysokie
c-ares to biblioteka asynchronicznego resolwera. Od wersji 1.32.3 do 1.34.7 występuje use-after-free / double-free w obsłudze zakończenia zapytań. Ten sam błąd – wywołanie callbacku zapytania, gdy zapytanie jest nadal powiązane z wewnętrznymi strukturami wyszukiwania kanału – występuje w wielu miejscach ścieżki ponownego wysyłania/kończenia.
Oryginalny opis (angielski, źródło NVD)
c-ares is an asynchronous resolver library. Prior to 1.34.7, ares_dns_parse() trusts the attacker-controlled ANCOUNT, NSCOUNT, and ARCOUNT fields before confirming that the DNS response contains enough bytes for the claimed records. Because process_answer() invokes parsing before transaction ID and question validation, a malicious DNS response can cause ares_dns_record_rr_prealloc() and ares_array_set_size() to reserve disproportionate heap memory for a tiny message. Repeated responses create large allocation and release cycles that can degrade or deny name resolution, without causing memory corruption or information disclosure. This issue is fixed in version 1.34.7.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

