freeBuf
nuvola:一款针对AWS环境的自动化安全分析工具
2022-11-25 16:03:01
所属地 广西

关于nuvola

nuvola是一款功能强大的针对AWS环境的自动化安全分析工具,该工具可以使用通过Yaml语句创建的简单的预定义可扩展的自定义规则来转储AWS环境中的各种数据,并对AWS环境的配置信息和服务进程执行自动/手动安全分析。

这项目的主要目标是创建一个抽象的数字化云平台副本,可以帮助广大研究人员更好地研究和分析AWS云环境安全,其中还会覆盖活动目录安全和BloodHound等。

该工具还提供了一个图形数据库,可以增加发现不同攻击路径的可能性,而且还可以用作离线的轻量级数字化拷贝。

工具要求

1、docker-compose;

2、一个AWS账号,需配置awscli具备云环境资源的完整访问权,最好使用ReadOnly模式(arn:aws:iam::aws:policy/ReadOnlyAccess);

工具下载&构建

由于该工具基于Golang开发,因此我们需要在本地设备上安装并配置好Go环境。

首先,我们需要使用下列命令将该项目源码克隆至本地,并切换到项目目录下

git clone --depth=1 https://github.com/primait/nuvola.git

cd nuvola

接下来,创建并编辑.env文件,然后设备你的数据库用户名、密码和URL地址:

cp .env_example .env;

然后使用下列命令开启Neo4j Docker实例:

make start

最后,使用make命令构建项目源码即可:

make build

工具使用

第一步:首先你需要导出所有支持的AWS服务配置信息,并将数据加载到Neo4j数据库中:

./nuvola dump -profile default_RO -outputdir ~/DumpDumpFolder -format zip

第二步:将之前执行的导出操作所拿到的数据导入到Neo4j数据库中:

./nuvola assess -import ~/DumpDumpFolder/nuvola-default_RO_20220901.zip

第三步:使用预定义规则集对加载到Neo4j数据库中的数据执行静态安全审计分析:

./nuvola assess

第四步:或者,使用Neo4j浏览器对数据执行手动安全分析:

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

nuvola:【GitHub传送门

参考资料

https://neo4j.com/docs/operations-manual/current/installation/neo4j-browser/

https://github.com/primait/nuvola/tree/master/assets/slides/RomHack_2022-You_shall_not_PassRole.pdf

https://github.com/primait/nuvola/tree/master/assets/demos/

本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
文章目录