I den standard C-bibliotek Musl er der identificeret en sårbarhed (CVE-2024-2961), der fører til buffer overflow ved konvertering af specielt formateret tekst fra kodningen EUC-KR til UTF-8 ved hjælp af funktionen iconv(). Sårbarheden optræder fra version 0.9.13 af musl og vil blive rettet i den kommende udgivelse 1.2.6 (inden opdateringen offentliggøres bør der anvendes en patch). Sårbarheden blev identificeret af libxml2-biblioteket under fuzzing-testning.
Sårbarheden kan udnyttes til angreb på applikationer, der er bygget med Musl-biblioteket og udfører rekodning af tekst fra eksterne kilder. Udnyttelse af sårbarheden er mulig ved opkald af funktionen iconv_open() med angivelse af den oprindelige kodning EUC-KR og målkodningen UTF-8. Eksempler på potentielt sårbare applikationer inkluderer programmer, der rekoderer XML, HTML og e-mails baseret på kodningen, der er angivet i MIME-type-headeren (f.eks. "text/plain; charset=EUC-KR"). Programmer, der bruger libxml2-biblioteket, udfører sådan rekodning.
Sårbarheden skyldes en kombination af to fejl. Den første fejl er relateret til manglende korrekt kontrol af ugyldige multibyte sekvenser i EUC-KR-dekoderen. Den anden fejl er til stede i UTF-8-koderen, som ikke var designet til, at dekoderen for inputdata kan returnere ugyldige unicode skalærværdier. Som følge heraf fører behandlingen af sekvenser som «\xc8\x41» til, at værdier skrives til uden for det tildelte bufferområde.
Kilde: opennet.ru
