目录导航
S3Scanner简介
S3Scanner是一个用来扫描亚马逊开放的S3存储桶并下载其内容的工具
Amazon S3(Simple Storage service)是由AWS(Amazon Web Services)提供的服务,它可以存储文本、文件夹、图片、视频、PDF等,类似于云存储,并且在极少数情况下可以以纯文本形式存储备份、凭证等.

S3Scanner用法
用法: s3scanner [-h] [-o 输出文件] [-d] [-l] [--version] buckets
位置参数:
buckets 包含要检查的bucket的文本文件的名称
可选参数:
-h, --help --显示帮助消息并退出
-o 输出文件, --out-file OUTFILE --保存成功检测到的存储桶的文件名(默认:buckets.txt)
-d, --dump --在本地保存所有找到的开放的存储桶
-l, --list --将存储桶文件列表保存到本地文件:./list bucket/${bucket}.txt
--version --显示此工具的当前版本
该工具将接受一个存储桶名称列表。找到的S3存储桶将输出到文件。该工具还将在本地转储或列出“打开”存储桶的内容。
结果解释
该工具将尝试获取有关存储桶的所有可用信息,但是由您自己来解释结果。
- 对象访问(在这种情况下,对象是指存储在存储桶中的文件)
- 列出对象
- 写对象
- ACL访问
- 阅读权限
- 写入权限
可以为2个主要用户组设置任何或所有这些权限:
- 认证用户
- 公开用户(未设置AWS凭证的用户)
- (它们也可以应用于特定用户,但这超出了范围)
含义:仅仅因为存储桶的ACL返回“ AccessDenied”,并不意味着您无法对其进行读写。相反,您可能可以列出ACL,但不能对存储桶进行读写
S3Scanner安装方法
必要的安装库环境
awscli
pytest-xdist
coloredlogs
boto3
requests
下载地址:
Google网盘: https://w.ddosi.workers.dev/
使用linux安装
virtualenv venv && source ./venv/bin/activate #可选操作
pip install -r requirements.txt
python ./s3scanner.py
(兼容性已通过Python 2.7和3.6测试)
使用Docker安装
①构建Docker映像:
sudo docker build -t s3scanner https://github.com/sa7mon/S3Scanner.git
②运行Docker镜像:
sudo docker run -v /input-data-dir/:/data s3scanner --out-file /data/results.txt /data/names.txt
此命令假定names.txt
要枚举的域位于/input-data-dir/
主机上。
S3Scanner使用示例
此工具可对以下类型的存储桶格式进行检查:
bucket名称 – google-dev
域名 – uber.com,sub.domain.com
完整的s3网址 – yahoo-staging.s3-us-west-2.amazonaws.com(以便轻松与bucket-stream等其他工具结合使用)
bucket:值区:- flaws.cloud:us-west-2
> cat names.txt
flaws.cloud
google-dev
testing.microsoft.com
yelp-production.s3-us-west-1.amazonaws.com
github-dev:us-east-1
①转储所有开放的存储桶,将打开和关闭的存储桶都记录到found.txt中
> python ./s3scanner.py --include-closed --out-file found.txt --dump names.txt
②仅仅将开放的存储桶记录到默认输出文件(buckets.txt)
> python ./s3scanner.py names.txt
③将所有开放的存储桶文件列表保存到文件
> python ./s3scanner.py --list names.txt