freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Pacu工具牛刀小试之基础篇
2019-01-23 12:02:14

故事开局

随着时间的高速发展,社会的不断进步……亚马逊公司推出了AWS云计算平台,有越来越多公司或是大佬们的首选,为了能够跟得上大佬们的步伐,斗哥也决定入坑了。正所谓工欲善其事,必先利其器,因此,斗哥想先向大家介绍一款工具----Pacu(一款基于AWS渗透测试的框架)。

背景介绍

AWS引发的安全事件:

配置错误的AWS云存储实例引起的数据泄露已变得非常普遍,多得数不胜数,此处在前两年中各找一例较大的数据泄露事件。

2017年8月11日,一家电脑安全公司的研究人员发现了一个某国投票者数据库文件,该文件存储于亚马逊云计算服务器,内容有180万个注册投票者的信息,包括姓名、地址和出生日期。

2018年6月19日,UpGuard网络风险小组某分析师发现了一个名为abbottgodaddy的公众可读取的亚马逊S3存储桶。

Pacu工具简介

Pacu是一个开源AWS开发框架,专为针对AWS云环境的攻击性安全测试而设计的。它是由Rhino Security Labs创建和维护的,它可以帮助渗透测试人员通过利用AWS账户中的配置缺陷,使用特定模块就可轻松获取需要的信息。

准备工作:

(1)工具安装

安装步骤简单,几条代码即可:

> git clone [https://github.com/RhinoSecurityLabs/pacu](https://github.com/RhinoSecurityLabs/pacu)

 > cd pacu

 > bash install.sh

 > python3 pacu.py


(2)测试环境

AWS:斗哥自行在EC2上搭建服务器和在S3上创建了相应的存储桶,并在IAM上设置了对应的IAM管理用户Test以及EC2和S3的管理用户Tory,以供演示Pacu工具可以获取到信息。


关于AWS的部分介绍

AWS IAM----提供用户设置以及授权

AWS EC2----提供云服务器

AWS S3----提供网盘

IAM所创建的用户,是用于控制EC2服务以及S3服务,可具体至服务中的一些权限控制,可单一对EC2服务或者S3服务,也可同时对两个服务进行操作。

这三个服务是亚马逊目前主流的服务,同时也是越来越多人的首选,但是也存在了一些问题,一些人可能因为配置不当,而引发一些安全事件,而Rhino Security Labs也正是考虑到这个,开发了Pacu工具,用于辅助对AWS进行安全渗透(后面会有相应介绍)。


Pacu的初次尝试

在本次的文章中,斗哥准备先分享给大家简单的使用方法----获取对应信息。后续文章也会进行实战演示,通过此次文章中获取的这些信息再进行相应渗透。


关于IAM的信息获取

按上述的安装方式安装后,输入python3 pacu.py,第一次进入会要求我们输入会话名字,并且会在数据库中创建对应的数据库,将信息存入数据库中:

信息.webp.jpg

接下来,需要我们输入set_keys来添加所知的对应用户KeyID以及对应的秘钥:

密钥.webp.jpg

通过whoami可以查看当前用户信息:

当前.webp.jpg

各字段(从上往下)依次为用户名、角色名、资源名称、账户ID、用户ID、角色、组、策略、访问秘钥ID、加密后的访问秘钥、会话token、秘钥别名、权限(已确定)、权限。

通过data可以查看其他信息(会话信息、代理信息):

data.webp.jpg

需要注意的是session_regions表示的是会话地区,因为亚马逊的服务器分布在许多地方,有时候,我们可以根据需求选择不同的区域。这里可以通过regions进行查看:

re.webp.jpg

通过set_regions <区域名>可进行修改(因为因为斗哥的服务器是在亚太区域,所以设置如下区域):

set.webp.jpg

修改完毕后,可以开始操作了,首先,我们可以获取IAM权限信息(注意:这里是需要需要我们的用户有IAM权限才可以获取):

获取.webp.jpg

再通过whoami可以查看效果:

查看.webp.jpg

成功获取到信息。


关于EC2的服务器信息获取

进入Pacu工具后,选择0,重新创建会话---Tory

tory.webp.jpg

一样地方法,通过输入set_keys来添加所知的对应用户KeyID以及对应的秘钥:

一样.webp.jpg

并通过whoami查询:

并.webp.jpg

发现没什么有用的信息,此时,我们可以使用services查看该用户对应的哪些服务:

没什么用.webp.jpg

之后便准备获取EC2的相关信息。此时,若是忘了关于EC2有哪些命令模块,不要紧,可以通过search <需要查询的模块>来查询对应的模块即可:

查询.webp.jpg

为了获取EC2的信息,直接使用枚举类的功能模块:

ec2__enum

操作之前,如果我们忘记了如何使用该模块,也没关系,可以利用Help进行获取相关信息。

操作.jpg

可以发现,其实不带参数也是可以直接执行该模块,默认是枚举所有EC2服务器相关信息,但是为了斗哥的服务器是在亚太区域的,因此我们可以缩小一下范围(正常情况,该功能是用于发现账号中EC2服务器相关信息,但斗哥比较懒,只在亚太区域搭建了服务器,小伙伴们尽可自行尝试):

亚太.webp.jpg

通过data EC2可以查看对应的信息:

EC2.webp.jpg

注意:默认情况下是列举出所有相关的信息,若带上参数,则会显示出特定的参数对应的信息。并且在EC2的服务会被记录到数据库中,可通过services来查看:

注意.webp.jpg

本次就先介绍到此,期待下次在实战中再度相会。

小小总结

本次给大家分享这款工具,主要是因为斗哥最近准备开始研究AWS渗透测试这块的内容,一进到这个坑中,就有许多大佬都在推荐这款软件,刚入手,觉得总体还不错,对于新手来说,在做这块测试的时候会更容易一些。

斗哥也是刚入这个坑,欢迎各位斗友来稿交流讨论。

0000.jpg

# Pacu工具
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者