CVE-2026-35339
ŚrednieCVSS 5.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 4 - wyżej niż 4% wszystkich znanych CVE
Streszczenie
Tryb rekurencyjny (-R) narzędzia chmod w uutils coreutils nieprawidłowo obsługuje kody wyjścia przy wielu plikach. Wartość zwracana zależy tylko od ostatniego pliku, więc błędy takie jak 'Operation not permitted' na wcześniejszych plikach są maskowane przez sukces ostatniego.
Ocena ryzyka
Skrypty opierające się na kodach wyjścia mogą kontynuować działanie w fałszywym przekonaniu o sukcesie, podczas gdy wrażliwe pliki pozostają z nieprawidłowymi uprawnieniami.
Rekomendacja
Zaktualizuj uutils coreutils do wersji z poprawką i nie polegaj wyłącznie na kodzie wyjścia chmod -R.
Inne podatności w uutils coreutils
Zobacz wszystkie- CVE-2026-93658Wysokie
uutils coreutils przed wersją 0.10.0 ustawia tryb setuid lub setgid dla miejsc docelowych instalacji przed sfinalizowaniem zmian właściciela, co pozwala uprzywilejowanym użytkownikom pozostawić wykonywalne pliki setuid należące do uprzywilejowanego wywołującego, gdy zmiany właściciela zawiodą. Atakujący mogą wykonać pozostawione pliki setuid z podwyższonymi uprawnieniami, gdy operacje zmiany właściciela zawodzą na systemach z ograniczonymi możliwościami.
- CVE-2026-35381Niskie
Błąd logiczny w narzędziu cut z uutils coreutils powoduje ignorowanie flagi -s (only-delimited) przy jednoczesnym użyciu opcji -z (null-terminated) i -d '' (pusty delimiter). Implementacja kieruje tę kombinację przez specjalną ścieżkę dla separatora nowej linii, która nie sprawdza stanu tłumienia rekordów, w wyniku czego cut wypisuje cały rekord plus bajt NUL zamiast go pominąć.
- CVE-2026-35380Średnie
Błąd logiczny w narzędziu cut z uutils coreutils powoduje, że program błędnie interpretuje dwubajtowy ciąg '' (dwa apostrofy) jako pusty separator. Implementacja omyłkowo mapuje ten ciąg na znak NUL dla opcji -d i --output-delimiter. Może to prowadzić do cichego uszkodzenia danych lub błędów logicznych w skryptach i potokach przetwarzania danych.
- CVE-2026-35379Niskie
Błąd logiczny w narzędziu tr z uutils coreutils powoduje nieprawidłowe zdefiniowanie klas znaków [:graph:] i [:print:]. Implementacja błędnie włącza znak spacji (0x20) do klasy [:graph:] i wyklucza go z [:print:], odwracając standardowe zachowanie POSIX i GNU coreutils. Może to prowadzić do niezamierzonej modyfikacji lub utraty danych w skryptach automatyzacji.
- CVE-2026-35378Niskie
Błąd logiczny w narzędziu expr z uutils coreutils powoduje ewaluację podwyrażeń w nawiasach podczas fazy parsowania zamiast wykonania. Uniemożliwia to poprawne zwarcie logiczne dla operacji OR (|) i AND (&), przez co błędy arytmetyczne w gałęziach, które powinny być pominięte, są zgłaszane jako błędy krytyczne. Różni się to od zachowania GNU expr i może powodować przedwczesne zakończenie skryptów powłoki.
- CVE-2026-35377Niskie
Błąd logiczny w narzędziu env z uutils coreutils powoduje nieprawidłowe parsowanie argumentów wiersza poleceń przy użyciu opcji -S (split-string). W przeciwieństwie do GNU env, implementacja uutils błędnie waliduje sekwencje, powodując błąd "invalid sequence" i natychmiastowe zakończenie procesu z kodem 125 przy napotkaniu prawidłowych, ale nierozpoznanych sekwencji, takich jak \a lub \x.
- CVE-2026-35376Średnie
W narzędziu chcon z uutils coreutils występuje podatność TOCTOU podczas operacji rekurencyjnych. Implementacja rozwiązuje cele rekurencyjne przez świeże wyszukiwanie ścieżki (fts_accpath) zamiast powiązania przejścia i nadawania etykiety z konkretnym stanem katalogu napotkanym podczas przejścia; ponieważ operacje nie są zakotwiczone w deskryptorach plików, lokalny atakujący z prawem zapisu do drzewa katalogów może wykorzystać wyścigi rename lub symlinków, aby przekierować uprzywilejowaną operację ponownego etykietowania na niepożądane pliki lub katalogi. Podatność łamie oczekiwania hardeningu dla przepływów administracji SELinux i może prowadzić do nieautoryzowanej modyfikacji etykiet bezpieczeństwa na wrażliwych obiektach systemowych.
- CVE-2026-35375Niskie
Błąd logiczny w narzędziu split z uutils coreutils powoduje uszkodzenie nazw plików wyjściowych przy nie-UTF-8 prefiksach lub sufiksach. Implementacja używa to_string_lossy(), zamieniając nieprawidłowe sekwencje bajtów na znak zastępczy UTF-8 (U+FFFD), co różni się od GNU split zachowującego surowe bajty. Prowadzi to do tworzenia plików o nieprawidłowych nazwach.
- CVE-2026-35374Średnie
Luka typu Time-of-Check to Time-of-Use (TOCTOU) w narzędziu split z uutils coreutils. Program sprawdza tożsamość plików wejściowego i wyjściowego na podstawie ścieżek przed operacją, a następnie otwiera plik wyjściowy z obcięciem po walidacji, co pozwala lokalnemu atakującemu z prawem zapisu do katalogu na podmianę ścieżki (np. na dowiązanie symboliczne) i spowodowanie obcięcia oraz zapisu do nieoczekiwanego pliku, w tym samego pliku wejściowego lub innych wrażliwych plików, prowadząc do trwałej utraty danych.
- CVE-2026-35373Niskie
Błąd logiczny w narzędziu ln z uutils coreutils powoduje odrzucanie ścieżek źródłowych zawierających bajty nazw plików niebędące UTF-8 w formach z katalogiem docelowym (np. ln SOURCE... DIRECTORY). W przeciwieństwie do GNU ln, implementacja uutils wymusza kodowanie UTF-8, co skutkuje błędem stat i niezerowym kodem wyjścia.
Oryginalny opis (angielski, źródło NVD)
The recursive mode (-R) of the chmod utility in uutils coreutils incorrectly handles exit codes when processing multiple files. The final return value is determined solely by the success or failure of the last file processed. This allows the command to return an exit code of 0 (success) even if errors were encountered on previous files, such as 'Operation not permitted'. Scripts relying on these exit codes may proceed under a false sense of success while sensitive files remain with restrictive or incorrect permissions.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

