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

Koniec ery VPN? Jak sztuczna inteligencja zmienia krajobraz cyberzagrożeń i przyspiesza przejście do Zero Trust

Koniec ery VPN? Jak sztuczna inteligencja zmienia krajobraz cyberzagrożeń i przyspiesza przejście do Zero Trust

Przez ponad dwie dekady sieci VPN (Virtual Private Network) stanowiły podstawowy mechanizm zapewniający bezpieczny dostęp zdalny do zasobów przedsiębiorstw. W czasach, gdy większość pracowników wykonywa...
Accenture potwierdza wyciek danych

Accenture potwierdza wyciek danych

Accenture, obecny również w Polsce gigant usług profesjonalnych, potwierdziło naruszenie bezpieczeństwa danych po tym, jak haker przyznał się do kradzieży kodu źródłowego firmy. Accenture to przedsi...
FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

16 czerwca, czyli zaledwie pięć dni po rozpoczęciu Mistrzostw Świata 2026, badaczka cyberbezpieczeństwa działająca pod pseudonimem „BobDaHacker” opisała na swoim blogu lukę odkrytą w systemach FIFA. Według...
Masowa kampania password spray wymierzona w Azure CLI

Masowa kampania password spray wymierzona w Azure CLI

Cyberprzestępcy prowadzą zakrojoną na szeroką skalę kampanię password spray, wymierzoną w środowiska Microsoft 365 za pośrednictwem Azure CLI, o czym informuje Huntress – firma zajmująca się cyberbezpiec...
External MFA w Microsoft Entra ID – koniec Custom Controls

External MFA w Microsoft Entra ID – koniec Custom Controls

MFA, czyli uwierzytelnianie wieloskładnikowe, opiera się na prostej zasadzie: samo hasło nie wystarcza. Po wpisaniu loginu i hasła użytkownik musi jeszcze potwierdzić swoją tożsamość drugim składniki...