GCP - Apikeys Privesc
Klucze API
Następujące uprawnienia są przydatne do tworzenia i kradzieży kluczy API, nie tych z dokumentacji: Klucz API to prosty zaszyfrowany ciąg znaków, który identyfikuje aplikację bez żadnego podmiotu. Są one przydatne do anonimowego dostępu do publicznych danych i służą do powiązania żądań API z projektem w celu kontroli limitów i rozliczeń.
Dlatego też, posiadając klucz API, możesz sprawić, że firma będzie płacić za korzystanie z API, ale nie będziesz w stanie eskalować uprawnień.
Aby uzyskać więcej informacji na temat kluczy API, sprawdź:
pageGCP - API Keys EnumAby dowiedzieć się, jak tworzyć klucze API w inny sposób, sprawdź:
pageGCP - Serviceusage PrivescAtak siłowy na dostęp do klucza API
Ponieważ możesz nie wiedzieć, które interfejsy API są włączone w projekcie lub jakie są nałożone ograniczenia na znaleziony klucz API, warto uruchomić narzędzie https://github.com/ozguralp/gmapsapiscanner i sprawdzić, do czego możesz uzyskać dostęp przy użyciu klucza API.
apikeys.keys.create
apikeys.keys.create
To uprawnienie umożliwia tworzenie klucza API:
Możesz znaleźć skrypt do automatyzacji tworzenia, wykorzystania i czyszczenia środowiska podatnego na atak tutaj.
Należy pamiętać, że domyślnie użytkownicy mają uprawnienia do tworzenia nowych projektów i są nadawane im role Właściciela w nowym projekcie. Dlatego użytkownik może utworzyć projekt i klucz API wewnątrz tego projektu.
apikeys.keys.getKeyString
, apikeys.keys.list
apikeys.keys.getKeyString
, apikeys.keys.list
Te uprawnienia umożliwiają wylistowanie i pobranie wszystkich kluczy API oraz pobranie klucza:
Możesz znaleźć skrypt do automatyzacji tworzenia, wykorzystania i czyszczenia środowiska podatnego na ataki tutaj.
apikeys.keys.undelete
, apikeys.keys.list
apikeys.keys.undelete
, apikeys.keys.list
Te uprawnienia pozwalają na wyświetlanie i regenerowanie usuniętych kluczy API. Klucz API jest podawany w wynikach po wykonaniu operacji undelete:
Utwórz wewnętrzną aplikację OAuth do phishingu innych pracowników
Sprawdź następującą stronę, aby dowiedzieć się, jak to zrobić, chociaż ta czynność należy do usługi clientauthconfig
zgodnie z dokumentacją:
Last updated