Menu dostępności

Nowa metoda włamania, skuteczna przeciwko największym korporacjom – atak „Dependency Confusion”

Często najprostsze pomysły są genialne. Jednak najtrudniej jest być tym pierwszym, który wpadnie na pomysł i zastosuje go.

Jeden z takich konceptów należy do Alexa Birsana, badacza, który wymyślił metodę włamania do 35 dużych firm technologicznych, w tym Microsoft, Apple, Yelp, Paypal, Shopify, Netflix, Tesla i Uber, dzięki czemu zyskał 130 000 $ z programów Bug Bounty. Może się wydawać, że to dużo, ale za pewne o wiele więcej zapłaciłby znane grupy hackerskie, za sprzedanie im prostej, skutecznej metody włamania się i kradzieży danych z największych światowych korporacji. Chodzi o atak nazwany przez Alexa „Dependency Confusion”.


Metoda „Dependency Confusion”

Jak wskazuje nazwa, ta metoda opiera się na tak zwanym „zamieszaniu zależności” (ang. dependency confusion). Zasadniczo wykorzystuje zamieszanie związane z możliwymi lokalizacjami, których programy komputerowe (w tym przypadku popularne menedżery pakietów, takie jak npm, PyPI i RubyGems) używają do znajdowania plików, od których zależny jest projekt.

Wszystkie takie „menedżery” pakietów zaakceptują zależności wymienione w kodzie źródłowym jako nazwy i spróbują rozwiązać, co miał na myśli programista. Będą szukać zależności lokalnie, na komputerze, na którym znajduje się projekt oraz sprawdzą publiczny, dostępny w Internecie katalog menedżera pakietów.

Birsan stwierdził, że firmy, których dotyczy problem, używały lokalnie przechowywanych plików, których nie było w repozytoriach open-source.

Poniższy przykład pokazuje skrócony plik package.json, który zawiera listę zależności dla prywatnego projektu utworzonego przez PayPal. Birsan zauważył, że chociaż niektóre zależności, takie jak „express” w tym przykładzie, były obecne w publicznym repozytorium npm, inne, takie jak „pplogger”, były zamiast tego prywatnie utworzonymi pakietami npm PayPal, używanymi i przechowywanymi wewnętrznie przez firmę.

Autor zastanawiał się, czy złośliwe oprogramowanie można wprowadzić do takich projektów, tworząc w publicznym repozytorium npm pakiety pasujące do nazw lokalnych zależności.

Aby przetestować swój pomysł, zaczął szukać skutecznych miejsc, w których mógłby przesłać własne „złośliwe” pakiety do rejestru npm pod wszystkimi nieodebranymi nazwami. Ponieważ npm pozwala na automatyczne wykonanie dowolnego kodu podczas instalacji pakietu, jego kod był w stanie wykonać „Call Home” z każdego komputera, na którym został zainstalowany.


Komunikacja „Call Home”

Przeniesienie informacji na jego własny serwer z głębi dobrze chronionych sieci korporacyjnych stanowiło kolejny problem, który został rozwiązany za pomocą eksfiltracji DNS. Eksfiltracja przez DNS to sposób na wymianę danych między dwoma komputerami bez bezpośredniego połączenia. Protokół DNS cały czas nie jest wystarczająco monitorowany w organizacjach, co powoduje, że przesyłanie przez niego informacji jest możliwe w sposób niezauważalny.

Podczas fazy eksfiltracji klient wysyła żądanie rozpoznania nazwy DNS do zewnętrznego adresu serwera DNS. Zamiast odpowiadać rekordem A, serwer nazw atakującego odpowie rekordem CNAME, MX lub TXT, co umożliwia przesłanie dużej ilości nieustrukturyzowanych danych między atakującym a ofiarą.

Oprócz rozszerzenia swojego pierwotnego pomysłu na menedżery pakietów Python i Ruby, Birsan przetestował również, co by się stało, gdyby załadował pakiet z wyższym numerem wersji niż aktualne ostatnie wydanie. W takich przypadkach wyższa wersja w repozytorium publicznym miała pierwszeństwo przed starszą wersją lokalną. To jeszcze bardziej zwiększyło skuteczność tej metody.


Nagrody pieniężne

Jak dotąd Alex Birsan otrzymał 130 000 dolarów z programów nagród za podatności. To dużo pieniędzy, ale wyobraź sobie, ile mógłby zarobić, sprzedając tę sztuczkę oferentowi. Wszyscy znamy druzgocące skutki udanych ataków na łańcuch dostaw. W naszej pamięci są takie ataki jak: SolarWinds, Equifax, NotPetya czy CCleaner. Gdyby któreś ze znanych malware zostały wyposażone w tą metodę, skutki były tragiczne. Według raportu Sonatype o stanie łańcucha dostaw oprogramowania w 2020 r, ataki takie, wymierzone w projekty oprogramowania open-source stanowią poważny problem dla przedsiębiorstw, ponieważ 90% wszystkich aplikacji zawiera kod open-source, a 11% z nich ma znane luki w zabezpieczeniach.


Poprawki

Większość „naruszonych” firm podjęła działania, aby zapobiec tego typu atakom, ale metoda manipulacji łańcuchem dostaw jest nadal użyteczna. Podstawowy problem musi zostać rozwiązany dla całego ekosystemu, a nie dla pojedynczych firm. Zwróćmy uwagę, że pliki package.json umożliwiają wyświetlanie zależności jako pełnych adresów URL, co może zapewnić pewną odporność na tę formę ataku. Najbardziej satysfakcjonującą częścią tej metody jest to, że nie opiera się na inżynierii społecznej. Wystarczy znać nazwy plików i można realizować plan.

Popularne

Atak bez hasła na Microsoft 365. Przestępcy przejmowali sesje i obchodzili MFA

Atak bez hasła na Microsoft 365. Przestępcy przejmowali sesje i obchodzili MFA

Kampania wykorzystująca kradzież i powtórne użycie tokenów uwierzytelniających doprowadziła do przejęcia 97 kont w 79 organizacjach. Cyberprzestępcy nie musieli łamać haseł ani ponownie przechodzić uwierzytelni...
Badacz uzyskał uprawnienia roota w najnowszym Samsung Smart TV i odkrył zaskakujące fakty

Badacz uzyskał uprawnienia roota w najnowszym Samsung Smart TV i odkrył zaskakujące fakty

Współczesne Smart TV korzystają z systemów operacyjnych, łączą się z Internetem, analizują sposób korzystania z aplikacji i mogą wspierać personalizację reklam. Pojawia się jednak pytanie, gdzie kończy...
LiteLLM znów przejęty. Złośliwa aktualizacja wykradała klucze API i poświadczenia

LiteLLM znów przejęty. Złośliwa aktualizacja wykradała klucze API i poświadczenia

21 października 2026 r. doszło do kolejnego poważnego incydentu bezpieczeństwa związanego z LiteLLM, popularnym rozwiązaniem open source wykorzystywanym do integracji aplikacji z modelami językowymi. Atakuj...
Jak hakerzy wykorzystują PHP2Shell do uzyskania uprawnień administratora (root) na Firewallach

Jak hakerzy wykorzystują PHP2Shell do uzyskania uprawnień administratora (root) na Firewallach

Nie tak dawno obszernie analizowaliśmy dwie krytyczne luki dotyczące silnika PHP wykorzystywanego przez miliony stron internetowych. W artykule dostępnym tutaj opisywaliśmy, jak mogą być eksploatowane te po...
Wykradanie haseł do Wifi z urządzeń sieciowych (na przykładzie modemu od UPC)

Wykradanie haseł do Wifi z urządzeń sieciowych (na przykładzie modemu od UPC)

Posiadasz urządzenie od UPC lub inne, które łączy się po Wifi? Chciałbyś poznać jego hasło do sieci? W tym artykule opiszemy sposób, dzięki któremu będziemy mogli poznać aktualne hasło do WiFi przech...