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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cloudmapper — CloudMapper 帮助您分析您的亚马逊网络服务(AWS)环境。 | Kitploit
工具/GitHubGitHub/duo-labs/cloudmapper
云基础设施安全漏洞扫描器网络映射配置审计信息收集云安全错误配置
GitHubduo-labs/cloudmapper

cloudmapper

CloudMapper 帮助您分析您的亚马逊网络服务(AWS)环境。

查看仓库
6.3k8322年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CloudMapper

注意:网络可视化功能(命令 prepare)已不再维护。

CloudMapper 可帮助您分析您的亚马逊云服务(AWS)环境。最初目的是生成网络图并在浏览器中显示(该功能已不再维护)。现在它包含更多功能,包括安全问题的审计。

  • 网络映射演示
  • 报告演示
  • 介绍文章
  • 展示如何发现网络错误配置的文章
  • 关于持续审计的文章

命令

  • audit:检查潜在的错误配置。
  • collect:收集有关账户的元数据。更多详情见此处。
  • find_admins:查看IAM策略以识别管理员用户和角色,或具有特定权限的主体。更多详情见此处。
  • find_unused:查找账户中未使用的资源。查找未使用的安全组、弹性IP、网络接口、卷和弹性负载均衡器。
  • prepare/webserver:参见网络可视化
  • public:查找公共主机和端口范围。更多详情见此处。
  • sg_ips:获取安全组中信任的CIDR的geoip信息。更多详情见此处。
  • stats:显示账户资源计数。更多详情见此处。
  • weboftrust:显示信任网络。更多详情见此处。
  • report:生成HTML报告。包含账户摘要和审计结果。更多详情见此处。
  • iam_report:为账户的IAM信息生成HTML报告。更多详情见此处。

如果你想添加自己的私有命令,可以创建一个 private_commands 目录并在其中添加。

截图

理想布局
报告截图

安装

要求:

  • python 3(已知 3.7.0rc1 可用)、pip 和 virtualenv
  • 您还需要 jq(https://stedolan.github.io/jq/)和 pyjq 库(https://github.com/doloopwhile/pyjq),它们需要安装一些额外的工具,如下所示。

在 macOS 上:

root@kitploit:~
# 克隆仓库
git clone https://github.com/duo-labs/cloudmapper.git
# 安装 pyjq 的依赖
brew install autoconf automake awscli freetype jq libtool python3
cd cloudmapper/
python3 -m venv ./venv && source venv/bin/activate
pip install --prefer-binary -r requirements.txt

在 Linux 上:

root@kitploit:~
# 克隆仓库
git clone https://github.com/duo-labs/cloudmapper.git
# (AWS Linux, Centos, Fedora, RedHat 等):
# sudo yum install autoconf automake libtool python3-devel.x86_64 python3-tkinter python-pip jq awscli
# (Debian, Ubuntu 等):
# 你可能还需要 "build-essential"
sudo apt-get install autoconf automake libtool python3.7-dev python3-tk jq awscli
cd cloudmapper/
python3 -m venv ./venv && source venv/bin/activate
pip install -r requirements.txt

使用演示数据运行

提供了一小套演示数据。这将显示与演示网站 https://duo-labs.github.io/cloudmapper/ 相同的环境。

root@kitploit:~
# 生成网络映射数据
python cloudmapper.py prepare --config config.json.demo --account demo
# 生成报告
python cloudmapper.py report --config config.json.demo --account demo
python cloudmapper.py webserver

这将在本地运行一个网络服务器,地址为 http://127.0.0.1:8000/ 通过该链接查看网络映射,或通过 http://127.0.0.1:8000/account-data/report.html 查看报告。

设置

  1. 配置您的账户信息。
  2. 收集有关AWS账户的信息。

1. 配置您的账户

将 config.json.demo 复制为 config.json 并编辑,包含您的账户ID和名称(例如 "prod"),以及任何外部CIDR名称。CIDR是一个IP范围,例如 1.2.3.4/32 表示只有IP 1.2.3.4。

2. 收集账户数据

此步骤使用CLI进行 describe 和 list 调用,并将json记录在 account-data 中由账户名称命名的文件夹中。

需要的AWS权限

您必须配置好AWS凭证,这些凭证可以被CLI用于读取不同元数据的权限。我推荐使用 aws-vault。CloudMapper 将收集IAM信息,这意味着您必须使用MFA。只有 collect 步骤需要AWS访问权限。

您必须具有以下权限(这些权限授予各种元数据的读取访问权限):

  • arn:aws:iam::aws:policy/SecurityAudit
  • arn:aws:iam::aws:policy/job-function/ViewOnlyAccess

收集数据

收集数据的方法如下:

root@kitploit:~
python cloudmapper.py collect --account my_account

分析数据

从这里开始,尝试运行不同的命令,例如:

root@kitploit:~
python cloudmapper.py report --account my_account
python cloudmapper.py webserver

然后在浏览器中查看报告,地址为 127.0.0.1:8000/account-data/report.html

进一步配置

生成配置文件

除了直接修改 config.json,还有一个命令可以配置其中的数据,如果需要的话:

root@kitploit:~
python cloudmapper.py configure {add-account|remove-account} --config-file CONFIG_FILE --name NAME --id ID [--default DEFAULT]
python cloudmapper.py configure {add-cidr|remove-cidr} --config-file CONFIG_FILE --cidr CIDR --name NAME

这将允许您定义您在环境中使用的不同AWS账户以及已知的CIDR IP。

如果您使用 AWS Organizations,您还可以使用以下命令自动添加组织成员账户到 config.json:

root@kitploit:~
python cloudmapper.py configure discover-organization-accounts

您需要先通过AWS CLI进行身份验证,并拥有 organization:ListAccounts 权限才能运行此命令。

使用审计配置覆盖

您可能发现您不关心某些审计项目。您可能希望完全忽略检查,或者仅忽略特定资源。将 config/audit_config_override.yaml.example 复制为 config/audit_config_override.yaml 并根据文件中的注释进行编辑。

使用Docker容器

创建的docker容器旨在交互式使用。

root@kitploit:~
docker build -t cloudmapper .

CloudMapper 需要调用IAM接口,并且不能使用会话凭证进行收集,因此如果您想收集数据,不能使用 aws-vault 服务器,必须直接传入角色凭证或在容器内手动配置aws凭证。以下代码会将您的原始凭证暴露在容器内。

root@kitploit:~
(                                                              
    export $(aws-vault exec YOUR_PROFILE --no-session -- env | grep ^AWS | xargs) && \ 
    docker run -ti \
        -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
        -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
        -p 8000:8000 \
        cloudmapper /bin/bash
)

这将进入容器。运行 aws sts get-caller-identity 以确认设置正确。CloudMapper 演示数据不会被复制到docker容器中,因此您需要从系统收集实时数据。注意,docker默认可能会限制容器可用的内存。例如在Mac OS上,默认是2GB,对于中等规模的账户可能不足以生成报告。

root@kitploit:~
python cloudmapper.py configure add-account --config-file config.json --name YOUR_ACCOUNT --id YOUR_ACCOUNT_NUMBER
python cloudmapper.py collect --account YOUR_ACCOUNT
python cloudmapper.py report --account YOUR_ACCOUNT
python cloudmapper.py prepare --account YOUR_ACCOUNT
python cloudmapper.py webserver --public

然后您应该能够通过访问 http://127.0.0.1:8000/account-data/report.html 查看报告。

定期运行CloudMapper以审计您的环境

有一个CDK应用程序,用于通过Fargate部署CloudMapper,使其每夜运行,将审计结果发送到Slack频道的警报,并生成报告保存在S3上,相关描述见此处。

替代方案

对于网络图,您可以尝试 https://github.com/lyft/cartography 或 https://github.com/anaynayak/aws-security-viz

对于审计和其他AWS安全工具,请参见 https://github.com/toniblyx/my-arsenal-of-aws-security-tools

许可证

  • cytoscape.js: MIT https://github.com/cytoscape/cytoscape.js/blob/master/LICENSE
  • cytoscape.js-qtip: MIT https://github.com/cytoscape/cytoscape.js-qtip/blob/master/LICENSE
  • cytoscape.js-grid-guide: MIT https://github.com/iVis-at-Bilkent/cytoscape.js-grid-guide
  • cytoscape.js-panzoom: MIT https://github.com/cytoscape/cytoscape.js-panzoom/blob/master/LICENSE
  • jquery: JS Foundation https://github.com/jquery/jquery/blob/master/LICENSE.txt
  • jquery.qtip: MIT https://github.com/qTip2/qTip2/blob/master/LICENSE
  • cytoscape-navigator: MIT https://github.com/cytoscape/cytoscape.js-navigator/blob/c249bd1551c8948613573b470b30a471def401c5/bower.json#L24
  • cytoscape.js-autopan-on-drag: MIT https://github.com/iVis-at-Bilkent/cytoscape.js-autopan-on-drag
  • font-awesome: MIT http://fontawesome.io/
  • FileSave.js: MIT https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
  • circular-json: MIT https://github.com/WebReflection/circular-json/blob/master/LICENSE.txt
  • rstacruz/nprogress: MIT https://github.com/rstacruz/nprogress/blob/master/License.md
  • mousetrap: Apache https://github.com/ccampbell/mousetrap/blob/master/LICENSE
  • akkordion MIT https://github.com/TrySound/akkordion/blob/master/LICENSE
下载工具
发现摘要
发现 IAM报告
命令行审计 命令行 public 命令