
Wprowadzenie do problemu / definicja luki
Badacze z Edera ujawnili błąd logiczny w parserach archiwów TAR w ekosystemie Rusta, nazwany TARmageddon i śledzony jako CVE-2025-62518 (CVSS 8.1). Luka dotyczy biblioteki async-tar oraz licznych forków, m.in. tokio-tar, a przez to wpływa na popularne projekty, takie jak uv (menedżer pakietów Pythona od Astral), testcontainers czy wasmCloud. W określonych warunkach podatność umożliwia nadpisanie plików i eskalację do zdalnego wykonania kodu (RCE).
W skrócie
- Identyfikator: CVE-2025-62518 („TARmageddon”), CVSS: 8.1 (High).
- Zakres: async-tar i forki (w tym tokio-tar oraz astral-tokio-tar).
- Skutki: „przemycanie” dodatkowych wpisów TAR, arbitrary file write i potencjalne RCE.
- Status: aktywnie łatane w utrzymywanych forkach (np. astral-tokio-tar ≥ 0.5.6); tokio-tar pozostaje w praktyce abandonware.
Kontekst / historia / powiązania
Edera odkryła błąd 21 sierpnia 2025 r., a następnie prowadziła zdecentralizowany proces ujawniania z uwagi na fakt, iż najpopularniejszy fork (tokio-tar, >5 mln pobrań) jest nieutrzymywany. Współpracowano z aktywnymi maintainerami (Astral) w ramach 60-dniowego embarga, publikując poprawki dla utrzymywanych gałęzi i dokumentując promień rażenia w zależnościach.
Analiza techniczna / szczegóły luki
Sedno problemu to desynchronizacja przy obliczaniu granic plików w archiwum TAR, gdy używane są PAX extended headers z nadpisaniem pola size. Parser w wadliwych implementacjach oblicza pozycję następnego nagłówka na podstawie rozmiaru z nagłówka ustar (często 0) zamiast wartości z PAX. To powoduje „skok” wskaźnika w środek danych pliku i mylenie części payloadu z kolejnymi nagłówkami, co pozwala „dosztukować” niewidoczne wcześniej wpisy (tar-smuggling).
Konsekwencje techniczne:
- Pomijanie kontroli ścieżek i list dozwolonych plików – dodatkowe wpisy mogą trafić poza oczekiwane drzewo plików.
- Arbitrary file write / overwrite – nadpisanie konfiguracji lub skryptów uruchamianych później przez system narzędzi (np. backendy buildów).
- Bypass skanerów i BOM – skan „czystego” zewnętrznego TAR może nie wykryć złośliwych plików z ukrytego, wewnętrznego TAR.
Praktyczne konsekwencje / ryzyko
W praktyce atakujący może:
- Zainfekować środowiska CI/CD (np. przez artefakty lub warstwy obrazów), prowadząc do RCE poprzez nadpisanie plików binarnych/konfigów wywoływanych w dalszym pipeline.
- Zatrucie kontenerów/testów w narzędziach pokroju testcontainers (zastąpienie plików w obrazie/warstwie).
- Wpływ łańcuchowy: popularność forków (zwłaszcza tokio-tar) skutkuje szerokim promieniem rażenia w projektach zależnych (np. uv, wasmCloud).
Rekomendacje operacyjne / co zrobić teraz
- Natychmiastowa aktualizacja: jeżeli używasz astral-tokio-tar, przejdź do ≥ 0.5.6 (zawiera poprawkę). Użytkownicy porzuconego tokio-tar powinni migrwać do utrzymywanego forka (np. astral-tokio-tar) lub innego wspieranego rozwiązania.
- Zasada „zero zaufania” dla archiwów: nie rozpakowuj niezweryfikowanych TAR; traktuj je jak niebezpieczne dane wykonywalne.
- Twarde ograniczenia ekstrakcji:
- stosuj sandboxing/chroot/containers,
- wymuszaj whitelistę ścieżek i odrzucaj wpisy spoza katalogu docelowego,
- normalizuj ścieżki (usuń .., ścieżki absolutne, linki symboliczne prowadzące na zewnątrz).
- Obrona w głąb:
- uruchamiaj procesy rozpakowywania z niskimi uprawnieniami i odpowiednim umask,
- oddziel miejsca zapisu artefaktów od ścieżek wykonywalnych (noexec tam, gdzie to możliwe),
- waliduj format przed ekstrakcją (sprawdź i egzekwuj zgodność PAX/ustar).
- Higiena łańcucha dostaw:
- dodaj reguły w SCA/Dependabot do blokowania nieutrzymywanych forków (np. tokio-tar),
- śledź GHSA/CVE dla zależności i automatyzuj fail-build przy wykryciu krytycznych luk,
- aktualizuj SBOM i re-skanuj po zmianach parserów archiwów.
(Punkty 2–5 wynikają z dobrych praktyk; pkt 1 opiera się na oficjalnych źródłach o wersji z poprawką).
Różnice / porównania z innymi przypadkami (jeśli dotyczy)
W przeszłości Rustowy tar (synchronous) miał osobne problemy z path traversal i nadpisywaniem plików (RUSTSEC-2018-0002/-2021-0080). TARmageddon jest innej natury: to błąd desynchronizacji granic spowodowany nieprawidłowym priorytetem nagłówków PAX vs ustar, który pozwala „wmontować” dodatkowe wpisy bez klasycznych sekwencji ../ czy linków. To oznacza, iż same filtry ścieżek nie wystarczą — trzeba poprawić logikę parsera.
Podsumowanie / najważniejsze wnioski
- CVE-2025-62518 (TARmageddon) to logiczna luka w parserach TAR dla async-Rust, umożliwiająca przemycanie wpisów i RCE przez nadpisywanie plików.
- Największe ryzyko: projekty oparte o tokio-tar (abandonware) oraz szerokie łańcuchy zależności (np. uv, testcontainers, wasmCloud).
- Działania priorytetowe: aktualizacja do astral-tokio-tar ≥ 0.5.6 lub migracja, wzmocnienie polityk ekstrakcji TAR i automatyzacja kontroli w łańcuchu dostaw.
Źródła / bibliografia
- The Hacker News – „TARmageddon Flaw in Async-Tar Rust Library Could Enable Remote Code Execution”, 22.10.2025. (The Hacker News)
- Edera – „TARmageddon (CVE-2025-62518): RCE Vulnerability…”, 21.10.2025 (odkrywcy, timeline, remediacje). (edera.dev)
- GitHub (Edera) – repo cve-tarmageddon: opis błędu i PoC/patches. (GitHub)
- Tenable CVE – wpis dla CVE-2025-62518 (wersja naprawcza astral-tokio-tar 0.5.6). (Tenable®)
- CyberScoop – materiał o wpływie na ekosystem i problemie abandonware. (CyberScoop)
Newsletter – zero spamu
Dołącz by otrzymać aktualizacje bloga, akademii oraz ukryte materiały, zniżki i dodatkową wartość.
Administratorem danych jest Security Bez Tabu Wojciech Ciemski . Dane osobowe są przetwarzane w celu marketingu bezpośredniego (wysyłka newslettera – podstawa art. 6 ust. 1 lit. a) rodo). Mają Państwo prawo dostępu do danych i uzyskania kopii danych, usunięcia i modyfikacji danych osobowych, złożenia sprzeciwu, przeniesienia danych lub ograniczenia przetwarzania, wycofania zgody oraz do złożenia skargi do UODO. Więcej informacje na temat ochrony danych osobowych znajdą Państwo w naszej Polityce Prywatności.
Dziękujemy!
Witamy w sołeczności SBT!