W oficjalnych archiwach źródłowych biblioteki xz, począwszy od wersji 5.6.0, odkryto złośliwy kod wprowadzony do procesu budowania biblioteki liblzma. Zagrożenie ma charakter ataku na łańcuch dostaw (supply chain attack) i dotyczy każdego oprogramowania linkowanego z podatną biblioteką.
▸ Pokaż oryginał (EN)
Malicious code was discovered in the upstream tarballs of xz, starting with version 5.6.0. Through a series of complex obfuscations, the liblzma build process extracts a prebuilt object file from a disguised test file existing in the source code, which is then used to modify specific functions in the liblzma code. This results in a modified liblzma library that can be used by any software linked against this library, intercepting and modifying the data interaction with this library.
Złośliwy kod jest ukryty w zamaskowanym pliku testowym zawartym w kodzie źródłowym. W trakcie procesu budowania biblioteki liblzma skrypt ekstrakcji pobiera z tego pliku prekompilowany obiekt binarny i używa go do modyfikacji wybranych funkcji w bibliotece liblzma. W efekcie powstaje zmodyfikowana wersja biblioteki, która przechwytuje i modyfikuje dane wymieniane przez oprogramowanie korzystające z tej biblioteki. Cały mechanizm jest oparty na szeregu złożonych technik zaciemniania (obfuscation), co utrudnia wykrycie złośliwego kodu podczas standardowej inspekcji.
Atakujący może przechwytywać i modyfikować dane przetwarzane przez dowolne oprogramowanie linkowane z zainfekowaną biblioteką liblzma, co w praktyce może prowadzić do uzyskania nieautoryzowanego dostępu, naruszenia poufności i integralności danych, a w najgorszym scenariuszu do zdalnego wykonania kodu (RCE).
Należy natychmiast obniżyć wersję biblioteki xz/liblzma do wersji poprzedzającej 5.6.0 (np. 5.4.x) lub zastosować patche dostępne u producenta dystrybucji zgodnie z referencjami. Red Hat wydał pilny alert bezpieczeństwa dla użytkowników Fedora 41 i Rawhide — należy postępować zgodnie z wytycznymi producenta dystrybucji.
Biblioteka xz (liblzma) w wersjach 5.6.0 i nowszych, dystrybuowanych jako oficjalne archiwa źródłowe (tarballs) przez projekt Tukaani; dotyczy każdego systemu lub oprogramowania, które zostało zbudowane z użyciem podatnej wersji biblioteki
Podatność została ujawniona publicznie 29 marca 2024 r. poprzez listę oss-security. Klasyfikacja CWE-506 (Embedded Malicious Code) potwierdza celowe umieszczenie złośliwego kodu w oficjalnych źródłach projektu — jest to klasyczny atak na łańcuch dostaw oprogramowania open source.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HTukaani Xz
APPTukaani5.6.05.6.1
Powiązane podatności
An arbitrary file write vulnerability was found in GNU gzip's zgrep utility. When zgrep is applied on the atta...
scripts/xzgrep.in in xzgrep 5.2.x before 5.2.0, before 5.0.0 does not properly process file names containing s...
An issue discovered in XZ 5.2.5 allows attackers to cause a denial of service via decompression of a crafted f...
XZ Utils to biblioteka do kompresji danych ogólnego przeznaczenia wraz z narzędziami wiersza poleceń. W wersja...