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

Uwaga! Trwa praktyczne wykorzystywanie krytycznej luki w systemach Fortinet!

Uwaga! Trwa praktyczne wykorzystywanie krytycznej luki w systemach Fortinet!

Święta, święta i po świętach. I dzisiaj, zamiast malować pisanki, piszemy o Fortinecie. Naszym „ulubionym” producencie firewallów, który pojawia się na portalu dość często. Nową okazję do publikacji dała...
Grupa ransomware ALP-001 twierdzi, że zaatakowała Polsat

Grupa ransomware ALP-001 twierdzi, że zaatakowała Polsat

W niedzielę wieczorem na zagranicznych serwisach newsowych poświęconych malware pojawiły się informacje o cyberataku na serwis Polsatu. Według doniesień za incydent odpowiada grupa ransomware ALP-001, która...
DarkSword – cichy zabójca iPhone’ów. Nowy exploit, który przejmuje kontrolę nad urządzeniem w kilka sekund

DarkSword – cichy zabójca iPhone’ów. Nowy exploit, który przejmuje kontrolę nad urządzeniem w kilka sekund

Powstał nowy, zaawansowany zestaw exploitów wymierzony w użytkowników iPhone’ów. Narzędzie o nazwie DarkSword pokazuje, że nawet platformy uznawane za jedne z najbezpieczniejszych mogą stać się celem...
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...
WhatsApp jako wektor ataku – Microsoft ostrzega przed nową kampanią malware ukrytą w wiadomościach

WhatsApp jako wektor ataku – Microsoft ostrzega przed nową kampanią malware ukrytą w wiadomościach

Cyberprzestępcy po raz kolejny wykorzystują zaufanie użytkowników do popularnych komunikatorów. Najnowsze ostrzeżenie Microsoftu ujawnia zaawansowaną kampanię, w której złośliwe oprogramowanie jest rozsy...