Menu dostępności

Jak atakujący mogą utworzyć backdoor w chmurze Google (GCP)?

Badacze bezpieczeństwa z IBM Security X-Force Red znaleźli w Google Cloud Platform (GCP) metodę, której potencjalnie mogą użyć atakujący do utworzenia stałego i ukrytego dostępu (z ang. persistence) za pomocą Google Cloud Shell.

Kwestii bezpieczeństwa chmury poświęciliśmy ostatnio dużą kampanię, opisującą Bezpieczeństwo Infrastruktury Chmurowej. Jak pokażemy poniżej, w nieodpowiednio zabezpieczonej infrastrukturze chmurowej atakujący mogą utworzyć specjalną tylną furtkę ze stałym dostępem (z ang. backdoor).


Co to jest Google Cloud Shell?

Google Cloud Shell to usługa udostępniająca powłokę internetową, w której można wykonywać czynności administracyjne GCP. Powłoka internetowa jest wygodną funkcją, ponieważ pozwala programistom i administratorom zarządzać zasobami GCP bez konieczności instalowania lub utrzymywania jakiegokolwiek oprogramowania lokalnie w ich systemie. Z technicznego punktu widzenia Google zauważa, że Cloud Shell jest efemeryczną wirtualną maszyną Debiana Linux (VM). To, z czym użytkownicy wchodzą w interakcję podczas korzystania z Cloud Shell, jest w rzeczywistości kontenerem Dockera. Aby korzystać z Cloud Shell, wystarczy zalogować się do konsoli Google Cloud i kliknąć ikonę terminala, która uruchamia instancję Cloud Shell.


W czym tkwi problem?

Naukowcy podkreślają fakt, iż pomimo efemeryczności (nietrwałości) wirtualnej maszyny istnieje możliwość utworzenia backdoora, ponieważ katalog domowy użytkownika (/home) może pomieścić do 5 GB danych i jest trwały. Odkryli, że Google Cloud Shell ma unikalną zdolność podczas uruchamiania do odczytu z pliku w folderze domowym o nazwie „.customize_environment”. Plik nie jest tworzony domyślnie, ale po dodaniu będzie otwierany przy każdym uruchomieniu Cloud Shell.

Z administracyjnego punktu widzenia jest to duże ułatwienie. Jeśli istnieją narzędzia, których administrator często używa, ale nie są instalowane domyślnie, może on napisać skrypt w pliku „.customize_environment”, aby zainstalować dowolne oprogramowanie, zmienić konfigurację systemu i nie tylko.

Powyższą metodę mogą również wykorzystać atakujący, na co zwracają uwagę badacze z IBM: „Jeśli jednak jesteś hakerem, ta funkcja może przyciągnąć Twoją uwagę z innych powodów. Źli aktorzy, testerzy penetracji i czerwone zespoły zazwyczaj mają podobny cel po początkowym wtargnięciu do środowiska. Celem jest pozostanie w zaatakowanej sieci, co oznacza, że muszą mieć co najmniej jedną metodę utrzymania dostępu. W cyberbezpieczeństwie nazywamy to trwałością”.


Jak utworzyć backdoor w GCP?

Jak opisują badacze z IBM, w pierwszej kolejności należy przeanalizować otwarte porty TCP, z którymi moglibyśmy się połączyć, oraz sprawdzić, czy żaden nie został zablokowany.

Źródło: IBM Security

Otwarty dostęp wychodzący oznacza, że możliwe jest uruchomienie odwrotnej powłoki, np. za pomocą narzędzia Netcat, używając poniższego kodu w pliku .customize_environment. Zapewnia nam to zdalny dostęp do zhakowanego Cloud Shell.

Przy następnym uruchomieniu Cloud Shell otrzymamy odwróconą powłokę.

Źródło: IBM Security

Na liście procesów widać, że .customize_environment jest automatycznie wywoływany z Bash podczas uruchamiania i nadal działa odwrotna powłoka.

Źródło: IBM Security

Jak sobie radzić z problemem?

Opisywana metoda trwałości posiada dwie wady:

  • Jej skuteczność zależy od tego, czy ofiara korzysta z Cloud Shell. Jeśli nie, nie będzie to niezawodna ani nawet skuteczna metoda utrwalania.

  •Przy pierwszym wykonaniu w Cloud Shell czynności wymagającej uwierzytelnienia, w przeglądarce użytkownika pojawia się okno autoryzacji, które należy zaakceptować przed uruchomieniem polecenia. Jeśli pojawi się nieoczekiwane wyskakujące okienko, cel może nabrać podejrzeń i wykryć metodę utrwalania.

IBM twierdzi, że obejściem ograniczającym wykrywanie byłoby monitorowanie aktywności użytkownika i czekanie, aż wykona wywołanie interfejsu API przed próbą wykonania działania wymagającego uwierzytelnienia. Wreszcie, jeśli użytkownik nie korzysta regularnie z Cloud Shell, katalog domowy zostanie usunięty po 120 dniach braku aktywności.

Jedynym sposobem na skuteczne zablokowanie tej metody utrwalania jest wyłączenie Cloud Shell dla wszystkich użytkowników z poziomu konsoli administracyjnej Google Admin (https://admin.google.com/), wybierając opcję „Additional Google Services”, następnie „Google Cloud Platform” i ustawienia „Cloud Shell Settings”. W ustawieniach tych należy odznaczyć pole wyboru „Allow access to Cloud Shell”:


Podsumowanie

Plik „.customize_environment” to solidna opcja trwałości po uzyskaniu początkowego dostępu do GCP. Metoda ta daje wiele możliwości. Implant dowodzenia i kontroli można pobrać i uruchomić przy każdym otwarciu Cloud Shell lub włączyć skrypt, który kradnie tokeny i publikuje je na serwerze atakującego i tak dalej.

W sieci można znaleźć wcześniejsze badania pokazujące, jak używać pliku „.bashrc” do utrwalania w Cloud Shell. Przykład w poście Juana Bernera z 2018 roku.

Popularne

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

W tym artykule pokażemy, jak możemy zmienić hasło administratora na komputerze posiadając do niego fizyczny dostęp. Artykuł ten można potraktować także jako przestrogę dla firm, które nie zaimplementowały jeszcze odpo...
Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

W środę 9 października użytkownicy platformy Microsoft Azure na całym świecie doświadczyli poważnych zakłóceń. Wiele usług stało się niedostępnych, a administratorzy nie mogli nawet zalogować się do portalu...
Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jeśli masz odrobinę szczęścia lub „odpowiednie umiejętności” i potrafisz zdobyć lokalne uprawnienia administracyjne na Twoim komputerze w firmie lub zaliczasz się do grona tych szczęściarzy, którzy pracuj...
Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Niedawno załatana wysoce poważna luka w zabezpieczeniach VMware jest wykorzystywana jako zero-day od października 2024 roku do wykonywania kodu z podwyższonymi uprawnieniami. Taką informacją podzieliło się w...
Uwaga, administratorzy oraz zespoły bezpieczeństwa Splunk! Sześć krytycznych luk w Splunk Enterprise – analiza i rekomendacje

Uwaga, administratorzy oraz zespoły bezpieczeństwa Splunk! Sześć krytycznych luk w Splunk Enterprise – analiza i rekomendacje

Splunk opublikował ważne informacje, dotyczące szeregu nowych podatności w swoich produktach Splunk Enterprise i Splunk Cloud Platform. Luki mogą umożliwić atakującym wykonanie nieautoryzowanego kodu Ja...