Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/google/gcp_scanner
侦察漏洞扫描器信息收集云安全
GitHubgoogle/gcp_scanner

gcp_scanner

GCP 资源扫描器,通过枚举 Google Cloud Platform 中的云服务、项目和 IAM 权限,评估受损凭证的访问级别。

查看仓库
3661118个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
gcp_scanner — GCP 资源扫描器,通过枚举 Google Cloud Platform 中的云服务、项目和 IAM 权限,评估受损凭证的访问级别。 | Kitploit

pytests GCP scanner version

免责声明

本项目并非 Google 官方项目。Google 不对其提供支持,且明确声明不对其质量、可销售性或特定用途的适用性承担任何保证责任。

GCP Scanner

标志

这是一个 GCP 资源扫描器,可以帮助确定特定凭据在 GCP 上的访问级别。该扫描器旨在帮助安全工程师评估特定 VM/容器被入侵、GCP 服务帐户或 OAuth2 令牌密钥泄露的影响。

目前,该扫描器支持以下 GCP 资源:

  • GCE
  • GCS
  • GKE
  • App Engine
  • Cloud SQL
  • BigQuery
  • Spanner
  • Pub/Sub
  • Cloud Functions
  • BigTable
  • CloudStore
  • KMS
  • Cloud Services
  • 该扫描器支持服务帐户模拟

该扫描器支持提取和使用以下类型的凭据:

  • GCP 虚拟机实例元数据;
  • 存储在 gcloud 配置文件中的用户凭据;
  • 具有 cloud-platform 授权的 OAuth2 刷新令牌;
  • JSON 格式的 GCP 服务帐户密钥。

该扫描器不依赖任何第三方工具(例如 gcloud)。因此,它可以编译为独立工具,并在未安装 GCP SDK 的机器上使用(例如 Kubernetes Pod)。但请注意,目前仅支持 Linux 操作系统。

请注意,GCP 提供了策略分析器来了解哪些主体(用户、服务帐户、群组和域)拥有哪些 Google Cloud 资源的何种访问权限。但这需要 GCP 项目具有特定权限,并且需要启用 Cloud Assets API。如果您只有 GCP SA 密钥、入侵过的 VM 的访问权限或 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

如果您想从容器运行扫描器,还有一个 Docker 构建文件: 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 构建独立二进制文件

请将 pyproject.toml 中的 google-api-python-client==2.80.0 替换为 google-api-python-client==1.8.0。之后,导航到扫描器源代码目录,使用 pyinstaller 编译独立二进制文件:

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

处理结果

GCP Scanner 会生成标准的 JSON 文件,可由任何 JSON 查看器或数据库处理。我们提供了一个基于 Web 的工具,可帮助您可视化结果。要运行该工具,请使用以下命令:

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 可视化工具使用指南 页面。

如果您只需一种便捷的方式来 grep JSON 结果,我们推荐使用 gron。

贡献

详见 CONTRIBUTING.md。

许可

Apache 2.0;详见 LICENSE。

下载工具