Firma Oligo Security opublikowała informacje o podatności dotyczącej przeglądarek Chrome, Firefox i Safari, umożliwiającej obejście ograniczeń dostępu do usług sieciowych dostępnych tylko na lokalnym systemie, poprzez odwołanie do adresu IP 0.0.0.0. Pierwsze ostrzeżenia o tej podatności pojawiły się 18 lat temu, ale problem do tej pory nie został rozwiązany.
Podatność, która występuje tylko w systemach Linux i macOS, spowodowana jest tym, że adres IP 0.0.0.0 na tych platformach prowadzi do lokalnego interfejsu sieciowego (localhost), tzn. wysłanie zapytania do 0.0.0.0 jest równoważne z zapytaniem do adresu 127.0.0.1. W nowoczesnych przeglądarkach istnieją środki przeciwdziałające odwołaniu do 127.0.0.1 podczas pracy z zewnętrznymi witrynami, ponieważ może ono być wykorzystywane do manipulacji wewnętrznymi usługami na systemie użytkownika, dostępnymi tylko dla lokalnych aplikacji.
Podatność ta pozwala na obejście zakazu odwołania do 127.0.0.1 i zorganizowanie ataku na wewnętrzne usługi podczas otwierania w przeglądarce zewnętrznej strony kontrolowanej przez atakującego. Przy odwołaniu przez 0.0.0.0 mechanizmy CORS (Cross-Origin Resource Sharing) oraz PNA (Private Network Access) nie mogą zapobiec dokonaniu takiego ataku. Odnotowano, że problem nie jest tak niegroźny, jak się wydaje, i jest już wykorzystywany przez cyberprzestępców w czasie rzeczywistych ataków, które eksploatują krytyczne podatności w aplikacjach serwerowych, do których dostęp mają tylko lokalne systemy.


Na przykład, wykorzystanie 0.0.0.0 do dostępu do lokalnych usług zostało zarejestrowane w atakach ShadowRay i Selenium Grid, które miały miejsce w marcu i lipcu, i były używane do uruchamiania kodu na systemach deweloperów. W przypadku ataku ShadowRay celem były systemy deweloperów korzystających z frameworka AI Ray. Drugi atak skoncentrowany był na eksploatacji krytycznej podatności w platformie Selenium Grid w konfiguracjach akceptujących zapytania tylko z lokalnego hosta.
Dodatkowo wspomina się o możliwości zastosowania metody do eksploatacji podatności ShellTorch w serwerze PyTorch TorchServe, stosowanym na komputerach deweloperów aplikacji AI. Dostęp do lokalnych usług sieciowych może być również wykorzystywany do skanowania portów sieciowych w celu pośredniej identyfikacji użytkownika.
Deweloperzy Firefox przygotowali zmianę specyfikacji dla wywołania Fetch, która zabrania dostępu do 0.0.0.0, ale na razie nie określili terminu rozpoczęcia blokady w przeglądarce. W Chrome planują rozpocząć blokadę 0.0.0.0 w wersji Chrome 128, która ma zadebiutować w przyszłym tygodniu. W Safari planują wprowadzić blokadę 0.0.0.0 w wersji Safari 18.
Źródło: opennet.ru
