Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
gcp_scanner — GCP-сканер ресурсов, который оценивает уровни доступа скомпрометированных учетных данных, перечисляя облачные сервисы, проекты и разрешения IAM в Google Cloud Platform. | Kitploit
Инструменты/GitHubGitHub/google/gcp_scanner
РазведкаСканеры уязвимостейСбор информацииБезопасность облачных сред
GitHubgoogle/gcp_scanner

gcp_scanner

GCP-сканер ресурсов, который оценивает уровни доступа скомпрометированных учетных данных, перечисляя облачные сервисы, проекты и разрешения IAM в Google Cloud Platform.

Репозиторий
3661118 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

pytests GCP scanner version

Отказ от ответственности

Этот проект не является официальным проектом Google. Он не поддерживается Google, и Google отказывается от всех гарантий в отношении его качества, товарной пригодности или соответствия конкретным целям.

GCP Scanner

Логотип

Это сканер ресурсов GCP, который помогает определить, какой уровень доступа имеют определённые учётные данные в GCP. Сканер предназначен для оценки влияния компрометации определённой виртуальной машины/контейнера, учётной записи сервиса GCP или утечки токена OAuth2.

В настоящее время сканер поддерживает следующие ресурсы GCP:

  • GCE
  • GCS
  • GKE
  • App Engine
  • Cloud SQL
  • BigQuery
  • Spanner
  • Pub/Sub
  • Cloud Functions
  • BigTable
  • CloudStore
  • KMS
  • Cloud Services
  • Сканер поддерживает имперсонацию сервисных аккаунтов

Сканер поддерживает извлечение и использование следующих типов учётных данных:

  • Метаданные экземпляра виртуальной машины GCP;
  • Учётные данные пользователя, сохранённые в профилях gcloud;
  • Refresh-токен OAuth2 с предоставленной областью cloud-platform;
  • Ключ сервисного аккаунта GCP в формате JSON.

Сканер не использует сторонние инструменты (например, gcloud). Таким образом, его можно скомпилировать как автономный инструмент и использовать на машине без установленного GCP SDK (например, в поде Kubernetes). Однако имейте в виду, что в настоящее время поддерживается только ОС Linux.

Обратите внимание, что GCP предлагает Policy Analyzer для выяснения того, какие субъекты (пользователи, сервисные аккаунты, группы и домены) имеют какой доступ к каким ресурсам Google Cloud. Однако для этого требуются определённые разрешения в проекте GCP и необходимо включить Cloud Assets API. Если у вас есть только ключ SA GCP, доступ к ранее скомпрометированной виртуальной машине или refresh-токен OAuth2, gcp_scanner — лучший вариант.

Установка

Для установки пакета используйте pip (также должен быть установлен git):

root@kitploit:~
pip install gcp_scanner
python3 -m gcp_scanner --help

Альтернативно:

root@kitploit:~
git clone https://github.com/google/gcp_scanner
cd gcp_scanner
pip install .
gcp-scanner --help

Если вы хотите запустить сканер из контейнера, используйте Dockerfile: docker build -f Dockerfile -t sa_scanner .

Параметры командной строки

root@kitploit:~
usage: python3 scanner.py -o folder_to_save_results -g -

GCP Scanner

options:
  -h, --help            show this help message and exit
  -ls, --light-scan     Return only the most important GCP resource fields in the output.
  -k KEY_PATH, --sa-key-path KEY_PATH
                        Path to directory with SA keys in json format
  -g GCLOUD_PROFILE_PATH, --gcloud-profile-path GCLOUD_PROFILE_PATH
                        Path to directory with gcloud profile. Specify - to search for credentials in default gcloud config path
  -m, --use-metadata    Extract credentials from GCE instance metadata
  -at ACCESS_TOKEN_FILES, --access-token-files ACCESS_TOKEN_FILES
                        A list of comma separated files with access token and OAuth scopes.TTL limited. A token and scopes should be stored in JSON format.
  -rt REFRESH_TOKEN_FILES, --refresh-token-files REFRESH_TOKEN_FILES
                        A list of comma separated files with refresh_token, client_id,token_uri and client_secret stored in JSON format.
  -s KEY_NAME, --service-account KEY_NAME
                        Name of individual SA to scan
  -p TARGET_PROJECT, --project TARGET_PROJECT
                        Name of individual project to scan
  -f FORCE_PROJECTS, --force-projects FORCE_PROJECTS
                        Comma separated list of project names to include in the scan
  -c CONFIG_PATH, --config CONFIG_PATH
                        A path to config file with a set of specific resources to scan.
  -l {DEBUG,INFO,WARNING,ERROR,CRITICAL}, --logging {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        Set logging level (INFO, WARNING, ERROR)
  -lf LOG_FILE, --log-file LOG_FILE
                        Save logs to the path specified rather than displaying in console
  -pwc PROJECT_WORKER_COUNT, --project-worker-count PROJECT_WORKER_COUNT
                        Set limit for project crawlers run in parallel.
  -rwc RESOURCE_WORKER_COUNT, --resource-worker-count RESOURCE_WORKER_COUNT
                        Set limit for resource crawlers run in parallel.

Required parameters:
  -o OUTPUT, --output-dir OUTPUT
                        Path to output directory

Опция -f требует дополнительного пояснения. В некоторых случаях сервисный аккаунт не имеет разрешений на явный перечень проектов. Однако у него всё ещё может быть доступ к базовым ресурсам, если мы укажем правильное имя проекта. Эта опция создана специально для таких случаев.

Сборка автономного бинарного файла с помощью PyInstaller

Пожалуйста, замените google-api-python-client==2.80.0 на google-api-python-client==1.8.0 в pyproject.toml. После этого перейдите в каталог исходного кода сканера и используйте pyinstaller для компиляции автономного бинарного файла:

pyinstaller -F --add-data 'roots.pem:grpc/_cython/_credentials/' scanner.py

Работа с результатами

GCP Scanner создаёт стандартный JSON-файл, который можно обработать любым JSON-просмотрщиком или БД. Мы предоставляем веб-инструмент, который поможет визуализировать результаты. Чтобы запустить инструмент, используйте следующую команду:

root@kitploit:~
usage: gcp-scanner-visualizer -p 8080

GCP Scanner Visualizer

options:
  -h, --help            show this help message and exit
  -p PORT, --port PORT  Port to listen on default 8080

Чтобы узнать больше об использовании инструмента, посетите страницу GCP Scanner Visualizer Usage Guide.

Если вам нужен просто удобный способ поиска в JSON-результатах, рекомендуем gron.

Участие в разработке

См. CONTRIBUTING.md для подробностей.

Лицензия

Apache 2.0; см. LICENSE для подробностей.

Скачать инструмент