freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

挖洞经验 | 看我如何发现苹果公司官网Apple.com的无限制文件上传漏洞
clouds 2018-07-11 13:00:39 506833

apple-bug-bounty-program-1.jpg

在前几篇文章中,我分享了亚马逊网站XSS漏洞和Bol.com的开放重定向漏洞,今天我再和大家聊聊不安全的服务器配置问题,很多时候,服务器的错误配置将会导致一些列目录或无限制文件上传漏洞。就拿我前久遇到的一个安全测试为例吧,目标网站绝对算得上是牛轰轰的大牌公司,Apple.com,对,你没看错,是苹果公司,我就发现了其网站的一个无限制文件上传漏洞。

最后,我也因此测试漏洞收获了苹果官方不菲的赏金,以及漏洞名人堂的入榜致谢。好吧,我们一起来看看这个苹果官网的无限制文件上传漏洞。

目标踩点

先冲杯咖啡,然后启动子域名探测程序 Aquatone,Aquatone算是一个前期侦察利器了,它能通过开源信息和字典方式最大范围地识别出目标网站存在的子域名站点。

02.png

Aquatone 具备四种不同命令执行功能:

1. Aquatone-discover: 从开源信息中查找目标网站相关的不同子域名或常见子域名;

2. Aquatone-scan: 针对Aquatone-discover结果中的不同子域名网站进行端口扫描;

3. Aquatone-gather: 为每个子域名网站创建快照,并形成最终的一份HTML报告。

4. Aquatone-takeover: 尝试查找由外部主机或服务托管的一些非活动的,也即目标网站已经废弃不在用的子域名。如果找到这么一个子域名,你可以通过重新续费注册再次接管它,实现间接劫持,上报之后坐等收赏金。这就有一批EdOverflow大牛以此种方式实现域名劫持的案例。

等待识别结果

通常来说,Aquatone的识别过程需要十多分钟的时间,扫描、探测、验证、报告成型。最终,这里的Apple.com前后怕用了差不多半小时,最后对1万多台主机进行了扫描,生成了多达84份的HTML报告。

03.jpeg

难道我是第一个用Aquatone扫描Apple.com官网的人吗?当然不是。估计也怕没人认真看完这84份HTML报告。那我们就从第50份报告开始吧,来认真分析一下最后的34份报告。

寻找异常

用了50多分钟的时间,我仔细看了看这34份报告,想尝试从中发现一些蛛丝马迹。正巧,在其中一份子域名网站报告中发现了苹果公司使用了多个 AWS S3 云存储服务来托管文件,如果我们能获得其中一个这些S3存储桶(bucket)的访问权限,就能间接实现对其涉及的 Apple.com 子域名网站劫持。

04.png要认真读完所有Aquatone 生成的84份HTML报告可谓相当之无聊,那我们就采取点不一样的方式吧。所有HTML报告中都包含了一个服务器发送过来的头信息,而且,S3存储桶也会发送个名为 X-Amz-Bucket-Region 的头消息,那我们就来在报告中尝试查找一下这个头消息字段。

05.jpeg现在,我们就一一手动来打开这些涉及 S3存储桶(bucket)的子域名试试,访问相应链接之后,几乎所有这些子域名网站都会返回一个拒绝访问(Access denied)的响应。06.png

测试目标

经过一遍手动访问之后,只有子域名网站 http://live-promotions.apple.com 响应的内容不同,其响应页面中包含了S3 bucket 的名称和目录信息。

07.png现在,有了 S3 bucket 的名称之后,我们可以尝试来连接它试试看,具体  S3 bucket 连接方法可以参照这里 - aws

我们需要安装 AWS 的命令行界面程序,然后根据上述响应页面中的 S3 bucket 名称进行远程连接。

安装好命令行界面程序之后,知道 S3 bucket 名称,那我们尝试看看能否上传些东西到上面,就传个钓鱼页面上去试试看看解析情况:

aws s3 cp login.html s3://$bucketName --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers

OK,竟然可以,还能成功解析,GOD:

11111.png2222.png漏洞影响

可以往存在漏洞的 live-promotions.apple.com 网站上传一个钓鱼页面;

可以窃取用户的子域共享Cookie信息;

可以从 S3 bucket 中获取到一些敏感文件信息,其中包含有 xcode 项目相关的东西。

总结

现在,我们就对这个苹果公司的子域名网站有了完整了读写控制权了,配合上述那个完美的能以假乱真的钓鱼页面,足可以实现针对苹果用户的密码或Cookie信息窃取。对这个漏洞的解决方法,也就是要对  S3 bucket 进行严格的安全加固,具体可以参照AWS的访问控制策略

漏洞上报进程

2018-6-19  发现并向苹果官方上报漏洞

2018-6-19  苹果官方确认漏洞

2018-6-19  苹果安全团队修复漏洞

2018-6-22  苹果将我列入漏洞致谢名人堂 当然我也获得了不菲赏金

*参考来源:medium,clouds 编译,转载请注明来自 FreeBuf.COM

# 苹果
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 clouds 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
clouds LV.9
I'm a robot , don't talk to me , code to me.
  • 348 文章数
  • 612 关注者
挖洞经验 | 获取国际象棋对战网站Chess.com五千万用户信息
2021-02-24
挖洞经验 | 多种针对开启HTTP PUT方法的漏洞利用
2021-02-23
挖洞经验 | 以账户更新方式实现某大公司网站普通用户到管理员的提权
2021-02-22
文章目录