CloudGoat是由Rhino Security Labs设计的AWS部署工具。此工具是用Python编写的,它可以在账户中部署易受攻击的AWS资源。我们将在Kali Linux中设置CloudGoat Docker镜像,并探索攻击者在配置错误的云环境中可以利用的不同漏洞。
为确保CloudGoat能够部署AWS资源,第一步是拥有有效的AWS账户。这里假设我们有Kali on AWS Cloud的资源,执行以下步骤:
1)访问https://console.aws.amazon.com/iam/home?region=us-east-2#/home。
2)找到用户菜单,然后单击Add user,输入cloudgoat,并选择Programmatic access,单击Next Permissions,如图1.42所示。
图1.42 在AWS控制台中创建IAM用户账户
3)选择Attach existing policies directly,检查AdministratorAccess是否如图1.43所示,然后单击Next Tags。
4)单击Next,一直到最后,如果没有显示任何错误,会看到如图1.44所示的界面,包含Success消息,这时可以下载用户的Access key ID和Secret access key。
现在我们已经在AWS账户中创建了具有管理权限的IAM用户,通过在终端中运行以下命令继续在Kali Linux中的Docker镜像上安装CloudGoat:
图1.43 将IAM用户添加到AdministratorAccess组
图1.44 为IAM用户创建Access key ID
最后,配置AWS客户端连接到AWS基础设施:aws configure--profile masteringkali,使用我们从AWS下载的最新访问密钥和密钥配置文件,如图1.45所示。我们将在第8章更深入地探讨这个工具。
图1.45 为AWS客户端配置新创建的访问密钥
图1.46描述了我们设置的LAB架构,用于在定义的目标上练习渗透测试。
图1.46 Kali Linux演习实验室架构
我们已经成功构建了自己的虚拟化内部实验室,能够提供较大范围的漏洞风险,帮助我们识别和利用基础架构、应用程序以及云平台中的多个漏洞。需要进行以下设置:
•在Windows Server 2016上运行域控制器,通过XAMPP运行Mutillidae。
•在Windows Server 2016上运行易受攻击(缺少补丁)的本地Microsoft Exchange服务器。
•过时的Microsoft Windows 2008 R2(Metasploitable3服务器)运行多个易受攻击的服务。
•一个域管理员、一个Exchange管理员和一个普通域用户,我们将在本书后面利用它们来根据角色执行权限提升。
• Docker镜像上的AWS云部署工具,用于设置易受攻击的AWS基础设施资源。
测试人员必须确保此实验室网络所创建的VM设置为NAT网络,并将网络名称设置为InsideNetwork,保证VM之间可以相互通信。