Vulnerability in Musl exploited when re-encoding text from EUC-KR encoding

W standardowej bibliotece C Musl wykryto podatność (CVE-2024-2961), prowadzącą do przepełnienia bufora podczas konwersji specjalnie sformatowanego tekstu z kodowania EUC-KR do UTF-8 za pomocą funkcji iconv(). Podatność ta pojawia się od wersji musl 0.9.13 i zostanie naprawiona w nadchodzącej wersji 1.2.6 (do publikacji aktualizacji należy stosować łatkę). Podatność została wykryta przez towarzyszącą bibliotekę libxml2 w trakcie testów fuzzingowych.

Podatność może być wykorzystywana do ataków na aplikacje zbudowane z użyciem biblioteki Musl, które wykonują przekodowanie tekstu pozyskanego z zewnętrznych źródeł. Eksploatacja podatności jest możliwa poprzez wywołanie w aplikacji funkcji iconv_open() z określeniem źródłowego kodowania EUC-KR oraz docelowego kodowania UTF-8. Jako przykład potencjalnie podatnych aplikacji wymienia się programy przekodowujące XML, HTML oraz wiadomości e-mail na podstawie kodowania wskazanego w nagłówku z typem MIME (na przykład „text/plain; charset=EUC-KR”). Przykładowe przekodowania wykonują programy korzystające z biblioteki libxml2.

Podatność jest spowodowana kombinacją dwóch błędów. Pierwszy błąd wiąże się z brakiem odpowiedniej weryfikacji niewłaściwych sekwencji wielobajtowych w dekoderze EUC-KR. Drugi błąd występuje w kodzie UTF-8, który nie był przystosowany do tego, że dekoder danych wejściowych może zwrócić nieprawidłowe wartości skalara Unicode. W efekcie przetwarzanie sekwencji typu „\xc8\x41” prowadzi do zapisu wartości w obszarze poza przydzielonym buforem.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster