CVE-2026-78367
WysokieCVSS 7.0Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
Znaleziono podatność w przetwarzaniu archiwów tar przez rpmbuild w RPM. Podczas przetwarzania spreparowanego archiwum źródłowego funkcja getTarSpec() w tools/rpmbuild.cc przekazuje kontrolowaną przez atakującego nazwę członka archiwum tar do rpmExpand() jako część wyrażenia makra %{basename:...}.
Ocena ryzyka
Specjalnie spreparowana nazwa członka .spec może wstrzyknąć makra RPM, w tym wyrażenia Lua, co prowadzi do wykonania dowolnego kodu z uprawnieniami użytkownika uruchamiającego rpmbuild. Może to być wykorzystane, gdy ofiara lub zautomatyzowany system budowania przetwarza archiwum źródłowe kontrolowane przez atakującego.
Rekomendacja
Zaktualizuj RPM do wersji zawierającej poprawkę i unikaj przetwarzania niezaufanych archiwów źródłowych w trybie tarball rpmbuild.
Inne podatności w RPM
Zobacz wszystkie- CVE-2026-103242Wysokie
Wada przepełnienia bufora na stercie w rpm. RPMTAG_FILESIGNATURES w spreparowanym, niepodpisanym pakiecie RPM jest zadeklarowany z niewłaściwym typem nagłówka, co powoduje, że hex2binv() przydziela jednobajtowy bufor, a następnie zapisuje zawartość sterowaną przez atakującego poza przydział. Jest to osiągalne przez rpm2cpio, rpm2archive i rpm -qlvp na niezaufanym pakiecie.
- CVE-2026-95520Wysokie
Przepełnienie bufora na stercie w programie rpm. Przetwarzanie wpisu dowiązania symbolicznego w niezaufanym pakiecie RPM, którego zadeklarowana wartość RPMTAG_LONGFILESIZES wynosi 0xFFFFFFFFFFFFFFFF, powoduje przepełnienie liczby całkowitej w funkcji iterReadArchiveNext(), co zmniejsza alokację bufora do jednego bajtu, a następnie pole cpio filesize jest używane do zapisu danych poza końcem alokacji. Podatność jest osiągalna przez rpm2cpio, rpm2archive i rpm -qlvp na niezaufanym pakiecie.
- CVE-2017-7501Wysokie
Wersje rpm przed 4.13.0.2 używają tymczasowych plików z przewidywalnymi nazwami podczas instalacji RPM. Atakujący, mający możliwość zapisu w katalogu, w którym będą instalowane pliki, może stworzyć dowiązania symboliczne do dowolnej lokalizacji, co może prowadzić do modyfikacji zawartości i uprawnień do dowolnych plików.
- CVE-2014-8118Wysokie
Przepełnienie całkowitej liczby w RPM 4.12 i wcześniejszych wersjach umożliwia zdalnym atakującym wykonanie dowolnego kodu poprzez spreparowany nagłówek CPIO w sekcji ładunku pliku RPM, co prowadzi do przepełnienia bufora na stosie.
- CVE-2013-6435Wysokie
W RPM w wersji 4.11.1 i wcześniejszych występuje warunek wyścigu, który pozwala zdalnym atakującym na wykonanie dowolnego kodu poprzez spreparowany plik RPM. Problem polega na tym, że instalacja pliku najpierw wydobywa zawartość do plików tymczasowych, zanim zweryfikuje podpis.
- CVE-2026-95521Wysokie
W rpm wykryto lukę command injection. Instalacja lub przebudowa źródłowego RPM, którego nazwy plików źródłowych lub spec zawierają konstrukcję makra %(), powoduje wykonanie przez rpm polecenia powłoki kontrolowanego przez atakującego poprzez popen() podczas relokacji listy plików źródłowych.
- CVE-2026-95519Wysokie
W rpm wykryto lukę. Atakujący może dostarczyć spreparowany plik manifestu, który po przetworzeniu przez użytkownika lub automatyzację za pomocą `rpm -q -p` lub podobnych przepływów prowadzi do wykonania dowolnego kodu. Dzieje się tak, ponieważ wpisy manifestu są nieoczekiwanie rozwijane makrami przed otwarciem, co pozwala na uruchomienie osadzonych poleceń powłoki.
- CVE-2026-84838Wysokie
W narzędziu rpmuncompress znaleziono podatność na wstrzykiwanie poleceń. Lokalny atakujący może wykonać dowolne polecenia, gdy rpmuncompress przetwarza specjalnie spreparowaną nazwę archiwum zawierającą metaznaki powłoki, które nie są poprawnie escapowane przed przekazaniem do poleceń powłoki.
- CVE-2026-84837Wysokie
W narzędziu rpm znaleziono podatność na wstrzykiwanie poleceń. Atakujący może wpłynąć na ścieżkę lub nazwę pliku tarballa przetwarzanego przez `rpmbuild -t*`, aby zawierała metaznaki powłoki, co pozwala na wykonanie dowolnych poleceń z uprawnieniami użytkownika budującego.
- CVE-2026-84233Wysokie
W rpm znaleziono błąd. Lokalny atakujący może dostarczyć specjalnie spreparowaną nazwę pliku `.gem` zawierającą składnię makr RPM. Gdy użytkownik lub zautomatyzowany przepływ pracy wywoła `rpmuncompress -x` na tym pliku, ekspansja makr następuje podczas konstruowania polecenia. Pozwala to atakującemu na wykonanie dowolnych poleceń z uprawnieniami konta wywołującego, co prowadzi do naruszenia poufności, integralności i dostępności.
Oryginalny opis (angielski, źródło NVD)
A vulnerability was found in RPM's rpmbuild tarball processing. When processing a crafted source archive, the getTarSpec() function in tools/rpmbuild.cc passes an attacker-controlled tar archive member name to rpmExpand() as part of a %{basename:...} macro expression. A specially crafted .spec member name can therefore inject RPM macros, including Lua expressions, resulting in arbitrary code execution with the privileges of the user running rpmbuild. This can be exploited when a victim or automated build system processes an attacker-controlled source tarball using rpmbuild tarball mode (such as -ts, -ta, or -tb).
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

