准备
环境
linux or mac(windows不支持)python version >= 3.7
地址
https://github.com/Aabyss-Team/awsKeyTools
安装
解压cd awsKeyToolspip3 install -r requirements.txt
如果遇到 error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 报错
解决方案: sudo apt-get install libncurses5-dev
如果在vps上使用不推荐Ubuntu18 , 因为python版本过低 , 虽然可以自己手动安装python3.8但是两个python3环境容易起冲突 , 推荐在kali上使用或者Ubuntu20
使用
第一次使用工具会提示输入ak
python3 main.py
输入你的aws_ak即可
1.查看命令帮助
┌──(root192)-[~/桌面/awsKeyTools-new_dev (2)]└─# python3 main.py
__ __ .__ _____ __ _ _______| | __ ____ ___.__._/ |_ ____ ____ | | ______\__ \ \/ \/ / ___/ |/ // __ < | |\ __\/ _ \ / _ \| | / ___/ / __ \ /\___ \| <\ ___/\___ | | | ( <_> | <_> ) |__\___ \ (____ /\/\_//____ >__|_ \___ > ____| |__| \____/ \____/|____/____ > \/ \/ \/ \/\/ \/ version : 0.0.1 by dbg9 and 无在无不在
aws-key-tools > helpHelp: help - 查看命令帮助 userinfo - 获取用户信息 privileges - 获取用户权限 ec2 - 获取所有地区的EC2(Elastic Computer Cloud) exec - ec2远程命令执行 aws-url - 根据当前高权限生成aws控制台访问url reset - 重置aws_ak exit - 退出程序aws-key-tools >
2.获取ak对应的用户信息
aws-key-tools > userinfo

3.查看用户权限
默认查看的是用户对应策略的json文件
aws-key-tools > privileges

使用enum参数可以通过枚举查看用户的权限
aws-key-tools > privileges enum

4.枚举当前用户可用地区存在的ec2主机
aws-key-tools > ec2

5.指定ec2远程命令执行
aws-key-tools > exec
如果无法获取平台信息 , 需要用户手动输入
如果当前ec2没有关联实例配置文件 , 会先检测是否存在实例配置文件 , 如果不存在就是创建 , 然后附加到ec2上

如果创建并添加报错 , 请再次执行exec , 此时不会创建会直接添加
如果存在已创建的示例配置文件直接附加

由于实例配置文件的关联需要一定的时间 , 所以约10分钟后 , 才能执行命令

输入 exit
退出当前命令执行
6.生成aws控制台访问连接
需要当前用户有一定的权限才可以成功执行
aws-key-tools > aws-url

7.重置aws_ak
提示用户重新输入ak , 当你获取到一个新的ak时 , 可以使用这个命令替换ak
aws-key-tools > reset
8.退出
aws-key-tools > exit
参考
- https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html
- https://github.com/NetSPI/aws_consoler
- https://github.com/andresriancho/enumerate-iam