A Edera biztonsági szakértői egy súlyos, magas kockázatú sebezhetőséget fedeztek fel és hoztak nyilvánosságra egy korai, mára elhagyott állapotban lévő, nyílt forráskódú aszinkron tar archívumkezelő könyvtárban, amely a Rust programozási nyelvhez készült. Ez a kritikus hiba lehetőséget ad távoli kódvégrehajtásra, ami jelentős veszélyt jelenthet a széles körben elterjedt és sokszor forkolt kód miatt.
A sebezhetőség háttere és hatása
Az érintett komponens az async-tar Rust könyvtár, valamint számos abból származó fork, például a tokio-tar, a Python csomagkezelő uv, továbbá a testcontainers, wasmCloud, astral-tokio-tar és krata-tokio-tar projektek. A legnépszerűbb fork, a tokio-tar több mint 5 millió letöltéssel rendelkezik a crates.io platformon, azonban jelenleg nem karbantartott.
Alex Zenla, az Edera technológiai igazgatója és társalapítója szerint: „Tekintettel arra, hogy ez a könyvtár megtalálható kritikus és széles körben használt eszközökben, mint például az uv csomagkezelőben, a potenciális hatás az építési rendszerekre és termelési környezetekre számos vállalatnál jelentős.”
A sebezhetőség részletei – CVE-2025-62518
A hibát CVE-2025-62518 azonosítóval látták el, amelynek CVSS pontszáma 8.1 – ez magas súlyosságot jelez. A probléma egy határérték-elemzési (boundary-parsing) logikai hiba, amely lehetővé teszi támadók számára a fájlok felülírását és így távoli kódvégrehajtást. Ez nem egy bonyolult memóriahibán alapuló sérülékenység, hanem egy könnyen kihasználható logikai hiba.
Zenla kiemelte: „Ez a sebezhetőség tipikus példája az open-source abandonware válságnak. Az eredeti hiba egy korai verzióban jelent meg, amelyet aztán többször is forkoltak, miközben az eredeti projekt karbantartása megszűnt.”
A forkolás és karbantartás hiányának következményei
A probléma abból adódik, hogy amikor egy projektet elhagynak vagy nem tartanak karban tovább, akkor annak hibái öröklődnek az összes leszármazott forkban. Ez egy olyan rendszerszintű kockázatot teremt, amelyet rendkívül nehéz nyomon követni és hatékonyan javítani.
Edera 2024. augusztus 21-én fedezte fel ezt a sérülékenységet belső fejlesztési munkálatok során. Másnap elkészítették a javításokat, majd igyekeztek ezeket minél több aktív forkba és nyílt forráskódú projektbe beépíteni még a nyilvános bejelentés előtt. A hibát hivatalosan 2024. augusztus 27-én hozták nyilvánosságra.
A Rust ökoszisztéma és az async archívumfeldolgozás szerepe
Zenla szerint a tokio-tar és annak forkjai képezik az aszinkron archívumfeldolgozás alapját a Rust ökoszisztémában. Ezek a tar archívumok alapvetőek a szoftverek terjesztésében, így potenciális hatásuk igen széles körű lehet.
Különösen aggasztó tényező az érintett kód rejtettsége: gyakran közvetett függőségként jelenik meg mélyen beágyazva építési eszközökben vagy konténer-pipeline-okban. Emiatt sok végfelhasználó vagy vállalat nincs is tudatában annak, hogy futtatják ezt a sérülékeny kódot.
A támadási vektorok és kihasználhatóság
A támadók képesek lehetnek kihasználni ezt a hibát fájlok felülírásával, ami távoli kódvégrehajtást tesz lehetővé. Mivel nem memóriahibáról van szó, hanem logikai problémáról, ezért viszonylag egyszerűen kihasználható.
A Rust biztonsági megítélése és emberi tényezők
Bár a Rust programozási nyelvet általánosan biztonságosabbnak tartják más nyelveknél – különösen azért, mert kiküszöböli a C/C++ memóriabiztonsági problémáit –, ez az eset jól mutatja, hogy még egy biztonságosabb nyelv sem véd meg teljesen az emberi hibáktól.
Edera „TARmageddon” néven emlegeti ezt a sebezhetőséget, amely újabb figyelmeztetés arra vonatkozóan is, hogy milyen veszélyeket rejthetnek magukban az elhagyott vagy nem karbantartott nyílt forráskódú projektek.
Kihívások a javítások terjesztésében
A javítások terjesztése nem volt egyszerű feladat: mivel nem csak egyetlen upstream projekt érintett, hanem számos aktív fork és downstream fogyasztó is használja ezt a kódot, decentralizált koordinációra volt szükség. Zenla szerint ez „egy bonyolult és manuális folyamat volt”, amely jól tükrözi az open-source ökoszisztéma felelősségi láncának törékenységét.
Összegzés
- Sérülékenység: Magas súlyosságú logikai hiba (CVE-2025-62518) az async-tar Rust könyvtárban.
- Kockázat: Távoli kódvégrehajtás lehetősége fájl felülíráson keresztül.
- Hatás: Több millió letöltést érintő elhagyott vagy nem karbantartott forkok miatt széles körű veszély.
- Kihívás: Javítások decentralizált terjesztése nehézkes az open-source projektek sokszínűsége miatt.
- Tanulság: Még biztonságosnak tartott nyelvek esetén is fontos az aktív karbantartás és felelősségvállalás az open-source közösségben.
A TARmageddon esete rávilágít arra is, hogy mennyire fontos tudatosítani mind fejlesztőkben, mind vállalatokban az open-source komponensek használatának kockázatait és azok folyamatos monitorozását.
Forrás: https://cyberscoop.com/async-tar-rust-open-source-vulnerability/