Podatności w oprogramowaniu GNU cpio

cert.pl 1 miesiąc temu

Opis podatności

CERT Polska otrzymał zgłoszenie o podatnościach w oprogramowaniu GNU cpio i koordynował proces ujawniania informacji.

Podatność CVE-2026-66484: W GNU cpio zidentyfikowano podatność typu Path Traversal w funkcjonalności wypakowywania archiwów tar. Podczas wypakowywania archiwum tar w trybie copy-in z opcją --no-absolute-filenames nazwa wypakowywanego pliku jest normalizowana, jednak cel twardego dowiązania z archiwum (hard-link) tar jest przekazywany do funkcji link_to_name bez sanityzacji. Archiwum tar dostarczone przez atakującego, zawierające wpis twardego dowiązania, którego linkname jest ustawiony na ścieżkę bezwzględną poza katalogiem wypakowywania, może spowodować, iż cpio utworzy twarde dowiązanie do istniejącego pliku poza docelowym katalogiem wypakowywania, pomimo opcji --no-absolute-filenames.

Ten problem został rozwiązany w commicie e2b9cbdd3354d2b1569b7390d1bc15c1930559ad

Podatność CVE-2026-66485: W GNU cpio zidentyfikowano podatność polegającą na niekontrolowanym alokowaniu pamięci w funkcji make_path w pliku src/makepath.c. Funkcja wykorzystuje alloca do alokacji pamięci na stosie na podstawie długości argpath, która pochodzi z zawartej w archiwum nazwy ścieżki, do której mają zostać wyodrębnione pliki. Złośliwe archiwum cpio zawierające wystarczająco długą zagnieżdżoną nazwę ścieżki powoduje nieograniczoną alokację na stosie, co skutkuje przepełnieniem stosu i awarią procesu cpio. Atakujący, który może dostarczyć spreparowane archiwum cpio ofierze, która je wypakuje, może spowodować awarię procesu.

Problem został rozwiązany w commicie 3cd514031371d8aeeaf2048aa10103e02831aaa9

Podatność CVE-2026-66486: Oprogramowanie GNU cpio nieprawidłowo koduje znaki wyjścia w funkcjonalności wyświetlania listy elementów archiwum. Podczas wyświetlania elementów archiwum dzięki cpio -it nazwy elementów są wypisywane bezpośrednio na wyjście bez cytowania lub maskowania. Atakujący może spreparować archiwum cpio zawierające nazwy elementów z osadzonymi znakami nowej linii lub sekwencjami ucieczki ANSI, co może prowadzić do sfałszowania wpisów na liście lub wstrzyknięcia sekwencji sterujących terminala podczas wyświetlania listy.

Problem ten został rozwiązany w commicie 2ff9600c9ef32e88759843cdbde74c8db5ae9b30

Podziękowania

Za zgłoszenie podatności dziękujemy Michałowi Majchrowiczowi oraz Marcinowi Wyczechowskiemu z zespołu AFINE.

Idź do oryginalnego materiału