S3Scanner是一个用来扫描亚马逊开放的S3存储桶并下载其内容的工具

扫描开放亚马逊S3存储并下载内容open AWS S3 buckets scan

S3Scanner简介

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

扫描开放亚马逊S3存储并下载内容open AWS S3 buckets scan
S3Scanner

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

项目地址:

GitHub