Goblob-公开暴露的Azure存储斑点的快速枚举工具

taibeihacker

Moderator
AVvXsEjFXbjQ5zLN4mli10xP76mE_0i16kLWONOlCWDb0Y5GBdCb2Ng29Jm8RfQ7TffKw2BB3GfCiPc1k8Mf_IJXsb5qXL3XUYjVtEvBjFnqbutcSg8-JX2dzkOTADj7kum9IG547c5utbbwD24d_f7jxsRf1gkuPcEAghmRJHXWIkUrM3-1WWLrpQQdVQavp2iv=w640-h444

Goblob是一种轻巧且快速的枚举工具,旨在帮助发现Azure Blobs中公众暴露的敏感信息,这对于各种研究目的,例如脆弱性评估,渗透测试和侦察。
警告。 Goblob将为每个存储帐户中的每个容器名称签发单个goroutines,仅受-Goroutines Flag中指定的最大并发goroutines数量的限制。在大多数情况下,使用默认文字列表,此实现会很快耗尽带宽,或者如果您在云环境中使用该工具,则可能会花费很多钱。在运行工具之前,请确保您了解自己在做什么。

Installation​

GO安装github.com/macmod/goblob@latest

Usage​

要使用Goblob,只需运行以下命令:
$ ./goblob Storageaccountname,其中StorageAccountName是列举公共Azure Blob存储URL的目标存储帐户。
您还可以为Check:指定存储帐户名称列表
$。/goblob -Accounts帐户默认情况下,该工具将使用常见的Azure Blob存储容器名称列表来构建潜在的URL。但是,您还可以使用-Containers选项指定容器名称的自定义列表。示例:
$ ./goblob -Accounts accounts.txt -containers WordLists/goblob -folder -names.txt该工具还支持使用-output option :来支持将结果输出到文件
$ ./goblob -Accounts accounts.txt -containers WordLists/goblob -folder -names.txt -Output results.txt如果您想提供通过stdin进行测试的帐户,您也可以省略-Accounts(或帐户名称)完全:
$ CAT帐户| TXT | ./goblob

Wordlists​

Goblob捆绑了可以与-Containers一起使用的基本单词:
Wordslists/goblob-folder-names.txt(默认) - KOAJ的AWS-S3-bucket-wordlist的改编- 一个包含可能用作容器名称的通用存储桶名称的单词列表。 words/goblob-folder-names.small.txt-默认文字列表的子集,仅包含一个在真实实验中被发现为容器名称的单词,其中超过35K截然不同的存储帐户+默认文字列表中的单词是NLTK Corpus的一部分。 wordslists/goblob-folder-names.micro.txt-小词列表的子集,仅包含在具有超过35K不同的存储帐户的真实实验中发现为容器名称的单词。

Optional Flags​

Goblob提供了几个可以调整的标志,以改善枚举过程:
-goroutines=n-允许的并发goroutines的最大数量(Default: 5000)。 -blobs=true-报告每个BLOB的URL,而不是容器的URL(Default: False)。 -verbose=n-设置详细级别(Default: 1,Min: 0,Max: 3)。 -maxpages=n-最大的容器页面以查找斑点(默认为: 20,设置为-1,设置为-1至禁用限制或避免完全列出斑点,只需检查容器是否公开)-TimeOut=n- timeout=n-超时http请求(第二次,default: 90 90)-maxidns nns=nns=nns=n -http=nns=客户端(Default: 100)-maxidleconnsperhost=n -MaxidLeconnSperHost传输参数(http client for HTTP Client(default: 10)-maxConnsperHost=n -MaxConnsperHost for HTTP Client 33: 0)-Skipssskipssl=-Skipsl=-Skipsl=-Skipsl=-Skipsl=-Skipsl=-Skipsl=-Skipl=-Skipl= - false)-InvertSearch=true-枚举每个容器的帐户,而不是每个帐户的容器(默认: false),例如,如果您只想使用大量的存储帐户和容器名称列表公开曝光的容器,则应使用-maxpages=0来防止Goroutines限制结果。然后,将其再次运行,以-blobs=true和-maxpages=-1发现的结果集,以实际获取Blobs的URL。
另一方面,如果您要针对大量存储帐户测试一个非常受欢迎的容器名称的小列表,则您可能需要尝试-invertSearch=true thim -maxpages=0,以查看每个容器名称的公共帐户,而不是每个存储帐户的容器名称。
您可能还想尝试更改-goroutines -timeout和-maxidleconns,-maxidleconnsperhost和-maxconnsperhost和-skipssl,以最好地使用带宽并更快地找到结果。
尝试旗帜以找到最适合您的旗帜;-)

Example​

A fast enumeration tool for publicly exposed Azure Storage blobs. (6)

Contributing​

通过打开问题或提交拉动请求来欢迎捐款。

TODO​

在尝试WordList保存带宽(也许)改善默认参数之前,请检查blob域,以提高性能

Wordcloud​

一个有趣的可视化我的实验中流行容器名称的有趣可视化
如果您想进一步了解我的实验和总体,请看一下我的文章:
Fireshellsecurity团队- 暴露的Azure Blobs的危险
 
返回
上方