微软云对象存储攻防

文章首发于:火线Zone社区

作者:ricky

01

Blob配置错误-公开访问

在创建存储账户时,默认是启用Blob公共访问的,当创建容器的访问级别配置为容器(匿名读取访问容器和blob)时,就会导致匿名请求枚举容器中的 blob。

微软云对象存储攻防_第1张图片

微软云对象存储攻防_第2张图片

当配置访问级别为专用或禁用Blob公共访问时,提示ResourceNotFound。

微软云对象存储攻防_第3张图片

当配置访问级别为Blob(仅匿名读取访问blob)时,可以读取容器中的blob,但是不可以枚举。

微软云对象存储攻防_第4张图片

微软云对象存储攻防_第5张图片

02

使用DNS枚举

每个资源终结点都是<存储帐户>.blob.core.windows.net

存在时,可以解析

微软云对象存储攻防_第6张图片

不存在时,无法解析
微软云对象存储攻防_第7张图片

使用Dns 枚举进行发现

python dnscan.py -d http://blob.core.windows.net -w subdomains-100.txt

微软云对象存储攻防_第8张图片

03

Bucket Object 遍历

当创建容器的访问级别配置为容器(匿名读取访问容器和blob)时,就会导致匿名请求枚举容器中的 blob。

微软云对象存储攻防_第9张图片

04

account keys泄漏

Github代码中泄露
网站JS代码

微软云对象存储攻防_第10张图片

05

子域名接管

创建好Blob后自定义域,即可以通过自定义域去访问资源。

微软云对象存储攻防_第11张图片
微软云对象存储攻防_第12张图片

当删除该存储账户后访问。

微软云对象存储攻防_第13张图片

再次创建相同的存储账户去接管子域名。

微软云对象存储攻防_第14张图片

你可能感兴趣的:(运维安全)