CVE-2017-1000257
KrytyczneStreszczenie
Podatność w libcurl związana z nieprawidłowym przetwarzaniem odpowiedzi IMAP FETCH, gdy rozmiar danych wynosi zero bajtów. Funkcja deliver-data może próbować odczytać dane z bufora, który nie jest poprawnie zakończony, co prowadzi do potencjalnego odczytu pamięci poza przydzielonym obszarem.
Ocena ryzyka
Organizacje mogą być narażone na nieprzewidziane zachowanie aplikacji, w tym awarie lub wycieki danych, co może prowadzić do poważnych problemów z bezpieczeństwem.
Rekomendacja
Zaleca się aktualizację libcurl do najnowszej wersji, aby usunąć tę podatność oraz przeprowadzenie audytu aplikacji korzystających z tej biblioteki.
Oryginalny opis (angielski, źródło NVD)
An IMAP FETCH response line indicates the size of the returned data, in number of bytes. When that response says the data is zero bytes, libcurl would pass on that (non-existing) data with a pointer and the size (zero) to the deliver-data function. libcurl's deliver-data function treats zero as a magic number and invokes strlen() on the data to figure out the length. The strlen() is called on a heap based buffer that might not be zero terminated so libcurl might read beyond the end of it into whatever memory lies after (or just crash) and then deliver that to the application as if it was actually downloaded.

