Opublikowano wyniki eksperymentu dotyczącego przejęcia kontroli nad pakietami w repozytorium AUR (Arch User Repository), używanym do dystrybucji pakietów przez zewnętrznych deweloperów bez ich uwzględnienia w głównych repozytoriach dystrybucji Arch Linux. Naukowcy opracowali skrypt, który sprawdza wygasanie rejestracji domen występujących w plikach PKGBUILD i SRCINFO. W trakcie uruchamiania tego skryptu zidentyfikowano 14 wygasłych domen, używanych w 20 pakietach do pobierania plików.
Prosty rejestracji domen jest niewystarczające do podmiany pakietu, ponieważ zawartość pobieranych plików jest weryfikowana na podstawie pozostawionej już w AUR sumy kontrolnej. Niemniej jednak okazało się, że około 35% pakietów w AUR używa w pliku PKGBUILD parametru „SKIP” do pomijania weryfikacji sumy kontrolnej (na przykład, wskazując sha256sums=(‘SKIP’)). W przypadku 20 pakietów z wygasłymi domenami parametr SKIP był używany w 4.
Aby zademonstrować możliwość przeprowadzenia ataku, naukowcy zakupili domenę jednego z pakietów, które nie weryfikowały sum kontrolnych, i umieścili na niej archiwum z kodem oraz zmodyfikowany skrypt instalacyjny. Zamiast faktycznej zawartości do skryptu dodano komunikat ostrzegawczy o wykonaniu zewnętrznego kodu. Próba zainstalowania pakietu kończyła się pobraniem podmienionych plików i, ponieważ suma kontrolna nie była sprawdzana, skuteczną instalacją i uruchomieniem kodu dodanego przez badaczy.
Pakiety, domeny z kodem których okazały się przestarzałe:
- firefox-vacuum
- gvim-checkpath
- wine-pixi2
- xcursor-theme-wii
- lightzone-free
- scalafmt-native
- coolq-pro-bin
- gmedit-bin
- mesen-s-bin
- polly-b-gone
- erwiz
- totd
- kygekteampmmp4
- servicewall-git
- amuletml-bin
- etherdump
- nap-bin
- iscfpc
- iscfpc-aarch64
- iscfpcx
Źródło: opennet.ru
