Vulnerability in XFS allowing reading raw data from block device

W kodzie systemu plików XFS wykryto lukę (CVE-2021-4155), która pozwala lokalnemu użytkownikowi bez przywilejów na odczyt danych z nieużywanych bloków bezpośrednio z urządzenia blokowego. Wszystkie istotne wersje jądra Linux powyżej 5.16, zawierające sterownik XFS, są narażone na ten problem. Poprawka znalazła się w wersji 5.16, a także w aktualizacjach jąder 5.15.14, 5.10.91, 5.4.171, 4.19.225 itd. Stan formowania aktualizacji z rozwiązaniem problemu w dystrybucjach można śledzić na tych stronach: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch.

Luka została spowodowana niepoprawnym zachowaniem dwóch specyficznych dla XFS ioctl(XFS_IOC_ALLOCSP) oraz ioctl(XFS_IOC_FREESP), które są funkcjonalnym odpowiednikiem ogólnosystemowego wywołania fallocate(). Przy zwiększaniu rozmiaru pliku, który nie jest wyśrodkowany na rozmiar bloku, ioctl XFS_IOC_ALLOCSP/XFS_IOC_FREESP nie zerują bajtów końcowych do następnej granicy bloku. W ten sposób na XFS o standardowym rozmiarze bloku 4096 bajtów napastnik może odczytać do 4095 bajtów wcześniej zapisanych danych z każdego bloku. W wskazanych obszarach mogą znajdować się dane usuniętych plików, zdefragmentowanych plików, a także plików z deduplikowanymi blokami.

Możesz sprawdzić swój system pod kątem problemu za pomocą prostego prototypu exploita. Jeśli po wykonaniu sugerowanej sekwencji poleceń uda się odczytać tekst Szekspira, to sterownik systemu plików jest podatny na ataki. Początkowe zamontowanie partycji XFS w celach demonstracyjnych wymaga praw superużytkownika.

Ponieważ ioctl(XFS_IOC_ALLOCSP) i ioctl(XFS_IOC_FREESP) funkcjonalnie praktycznie nie różnią się od standardowego fallocate(), a jedyną ich różnicą jest wyciek danych, ich istnienie przypomina backdoor. Pomimo ogólnej zasady – niezmieniania istniejących interfejsów w jądrze – na wniosek Linusa podjęto decyzję o całkowitym usunięciu tych ioctl w następnej wersji.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster