Az Arch Linux AUR tárolójában több mint 400 csomag fertőződhetett meg: így ellenőrizheted, érintett-e a rendszered

Az Arch Linux User Repositoryt az elmúlt napokban nagy kiterjedésű kártevőkampány érte, amely nem egyetlen csomagra korlátozódott. A közösségi vizsgálatok szerint az alvr mellett több száz AUR-csomag érintett lehet, köztük olyan népszerűbb alkalmazásokkal, amelyeket hétköznapi Arch-felhasználók is könnyen telepíthetnek, például az apple-music-desktop. Az eddig összegyűjtött lista már 450 fölötti csomagszámot mutat, de a feltárás még nem zárult le.

Az Arch Linux AUR tárolójában több mint 400 csomag fertőződhetett meg: így ellenőrizheted, érintett-e a rendszered

Az elsőként vizsgált csomagok között szerepelt a gnome-randr-rust nevű, amelyet egy frissen átvett AUR-karbantartói fiók olyan install fájllal módosított, amely npm-en keresztül további csomagokat töltött le. Az Arch levelezőlistán közzétett elemzés szerint ugyanez a minta több más AUR-csomagnál is megjelent, a moderátorok pedig megkezdték a problémás módosítások visszavonását. A támadás egyik visszatérő eleme az atomic-lockfile nevű npm-csomag volt, amelyet a közösségi vizsgálat kártékonynak minősített.

A közösségi gyűjtések alapján az érintett csomagok száma 400 fölé emelkedhetett, de a lista nem tekinthető véglegesnek. A beszámolók szerint a támadók az átlagfelhasználók által is telepíthető AUR-csomagokat céloztak, köztük asztali alkalmazásokat, fejlesztői eszközöket és különféle segédprogramokat. Ez azért jelent kockázatot, mert az AUR-ban a felhasználó helyben építi a csomagot, ezért a PKGBUILD és a hozzá tartozó telepítési fájlok ellenőrzése közvetlen biztonsági kérdéssé válik.

Az incidens nagyobb kockázatot jelent azoknál az Arch Linux alapú rendszereknél, amelyek grafikus csomagkezelőn vagy kényelmi eszközökön keresztül teszik elérhetővé az AUR-csomagokat. A CachyOS közösségében azért váltott ki aggodalmat az ügy, mert a disztribúció Shelly felülete közvetlen hozzáférést ad az AUR-hoz. Ez nem jelenti azt, hogy minden AUR-csomag fertőzött lenne, de a mostani eset jól mutatja, hogy az automatikusan vagy ellenőrzés nélkül elfogadott AUR-frissítések komoly biztonsági kockázatot hordoznak.

A felhasználóknak érdemes átnézniük, milyen AUR-csomagokat telepítettek az elmúlt napokban, és ellenőrizniük kell a frissítésekhez tartozó PKGBUILD- és install-fájlokat. Gyanús csomag esetén nem elég a törlés, mert egy hitelesítő adatokat célzó kártevő SSH-kulcsokhoz, fejlesztői tokenekhez vagy böngészőben tárolt bejelentkezési adatokhoz is hozzáférhetett. Ilyen helyzetben a kulcsok és tokenek cseréje, a böngészőprofilok ellenőrzése, valamint a rendszer alapos vizsgálata indokolt.

Az incidens újra rávilágított az AUR nyitott modelljének gyenge pontjaira. A közösségi tároló nagy rugalmasságot ad az Arch Linux felhasználóknak, de a karbantartóváltások, az elhagyott csomagok átvétele és a külső forrásból futtatott telepítési lépések könnyen támadási felületté válhatnak. A következő napokban várhatóan további csomagokat azonosíthatnak.

Egy francia szoftverfejlesztő Alexandre (kidev) Poumaroux által készített egyszerű sh-szkripttel ellenőrizhető, hogy a gépen telepítve van-e valamelyik kompromittált AUR-csomagból az Arch Linux telepítésünkön.

Töltsük le a scriptet innen, vagy másoljuk be egy szövegszerkesztőbe a kódját, és mentsük le .sh kiterjesztéssel, majd adjunk neki futási jogosultságokat az alábbi paranccsal:

$ chmod a+x ./aur_check.sh

Futtassuk le a scriptet:

$ ./aur_check.sh

$ sudo pacman -Rns csomagnev

Több érintett csomag egyszerre is eltávolítható:

$ sudo pacman -Rns csomag1 csomag2 csomag3

Az eltávolítás után célszerű ellenőrizni, maradtak-e árva függőségek a rendszeren:

$ pacman -Qtdq

Amennyiben a parancs találatot ad, a már nem használt függőségek is törölhetők:

$ sudo pacman -Rns $(pacman -Qtdq)

Fontos, hogy egy fertőzésgyanús AUR-csomag eltávolítása önmagában nem feltétlenül oldja meg az incidenst. Hitelesítő adatokat célzó kártevő esetén az SSH-kulcsok, fejlesztői tokenek, API-kulcsok és böngészőben tárolt bejelentkezési adatok cseréje is indokolt lehet.