Biblioteka libzypp przed wersją 17.38.12 zawiera podatność typu relative path traversal w obsłudze opcji 'keyhint' podczas parsowania pliku repomd.xml. Atakujący kontrolujący złośliwe repozytorium może wstrzykiwać lub nadpisywać dowolne pliki na docelowym systemie z uprawnieniami roota.
▸ Pokaż oryginał (EN)
A relative path traversal in the "keyhint" option in repomd.xml parsing of libzypp before 17.38.12 can be used by attackers able to supply a malicious repository to inject or overwrite files in the target system as root.
Podatność wynika z nieprawidłowej walidacji ścieżki relative przekazywanej w polu 'keyhint' pliku repomd.xml — metadanych repozytorium pakietów. Atakujący mogący dostarczyć złośliwe repozytorium (np. poprzez atak man-in-the-middle lub podmianę URL repozytorium) może skonstruować wartość 'keyhint' zawierającą sekwencje path traversal (np. '../'). Libzypp przetwarza tę ścieżkę bez odpowiedniej normalizacji, co prowadzi do zapisu pliku poza zamierzonym katalogiem, z uprawnieniami procesu zarządzającego pakietami (root).
Atakujący może wstrzyknąć lub nadpisać dowolne pliki systemowe z uprawnieniami roota, co w praktyce oznacza możliwość pełnego przejęcia kontroli nad systemem, np. poprzez modyfikację plików konfiguracyjnych, binarnych lub skryptów inicjalizacyjnych.
Należy zaktualizować libzypp do wersji 17.38.12 lub nowszej. Poprawka dostępna jest w oficjalnym repozytorium projektu (commit 294b1bad442d089ca671c5c03adc8031e3b29e04). Dodatkowo zaleca się korzystanie wyłącznie z zaufanych repozytoriów pakietów i weryfikację integralności ich konfiguracji.
OpenSUSE libzypp w wersjach przed 17.38.12
Podatność wymaga interakcji użytkownika (UI:R) oraz uprawnień administratora po stronie inicjatora (PR:H), jednak scope jest zmieniony (S:C), co odzwierciedla możliwość wpływu na zasoby poza kontekstem bezpośredniej aplikacji. Szczegóły dostępne w zgłoszeniu Bugzilla SUSE: bsc#1267426.
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:HOpensuse Libzypp
APPOpensuse< 17.38.12
Powiązane podatności
Path traversal w libzypp umożliwia nadpisanie plików i eskalację uprawnień
The decoupled download and installation steps in libzypp before 17.5.0 could lead to a corrupted RPM being lef...
In libzypp before 20170803 it was possible to add unsigned YUM repositories without warning to the user that c...
In libzypp before 20170803 it was possible to retrieve unsigned packages without a warning to the user which c...
In libzypp before August 2018 GPG keys attached to YUM repositories were not correctly pinned, allowing malici...