CVE-2026-35381
NiskieCVSS 3.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
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ąć.
Ocena ryzyka
Niezgodność z zachowaniem GNU coreutils stwarza ryzyko naruszenia integralności danych w zautomatyzowanych potokach, które polegają na cut -s do filtrowania danych bez separatora.
Rekomendacja
Zaktualizuj uutils coreutils do wersji z poprawką lub unikaj łączenia opcji -s, -z i -d '' w potokach przetwarzania danych.
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-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.
- CVE-2026-35372Średnie
Błąd logiczny w narzędziu ln z uutils coreutils powoduje, że narzędzie dereferencjonuje cel dowiązania symbolicznego nawet przy jawnie podanej fladze --no-dereference (lub -n). Implementacja respektowała intencję „no-dereference” tylko wtedy, gdy włączony był również tryb --force. Wada powoduje, że ln podąża za dowiązaniem wskazującym na katalog i tworzy nowe dowiązania wewnątrz tego katalogu docelowego, zamiast traktować samo dowiązanie jako cel. W środowiskach, gdzie uprzywilejowany użytkownik lub skrypt systemowy używa ln -n do aktualizacji dowiązania, lokalny atakujący może manipulować istniejącymi dowiązaniami, przekierowując tworzenie plików do wrażliwych katalogów.
Oryginalny opis (angielski, źródło NVD)
A logic error in the cut utility of uutils coreutils causes the utility to ignore the -s (only-delimited) flag when using the -z (null-terminated) and -d '' (empty delimiter) options together. The implementation incorrectly routes this specific combination through a specialized newline-delimiter code path that fails to check the record suppression status. Consequently, uutils cut emits the entire record plus a NUL byte instead of suppressing it. This divergence from GNU coreutils behavior creates a data integrity risk for automated pipelines that rely on cut -s to filter out undelimited data.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

