挖洞经验 | 看我如何发现苹果公司官网Apple.com的无限制文件上传漏洞
字数 1105 2025-08-18 11:37:23
苹果官网无限制文件上传漏洞分析与利用教学
漏洞概述
本教学文档详细分析苹果公司官网Apple.com存在的一个无限制文件上传漏洞,该漏洞源于AWS S3存储桶的错误配置,允许攻击者上传任意文件到苹果的子域名网站。
工具准备
Aquatone工具套件
Aquatone是一个强大的子域名侦察工具,包含四个主要功能模块:
- Aquatone-discover:从开源信息和常见子域名字典中识别目标网站的子域名
- Aquatone-scan:对发现的子域名进行端口扫描
- Aquatone-gather:为每个子域名创建快照并生成HTML报告
- Aquatone-takeover:查找废弃子域名以进行劫持
侦察阶段
-
使用Aquatone对apple.com进行子域名扫描
- 扫描耗时约30分钟
- 扫描了10,000+台主机
- 生成了84份HTML报告
-
分析报告技巧:
- 重点关注X-Amz-Bucket-Region头信息
- 查找AWS S3存储桶相关的子域名
漏洞发现
-
发现可疑子域名:
http://live-promotions.apple.com- 该子域名返回了S3 bucket的名称和目录信息
- 其他子域名仅返回"Access denied"
-
确认S3 bucket可写:
- 安装AWS CLI工具
- 尝试上传测试文件:
aws s3 cp login.html s3://$bucketName --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers - 上传成功并可正常解析
漏洞利用
潜在攻击方式
-
钓鱼攻击:
- 上传精心设计的钓鱼页面
- 利用苹果官方域名获取用户信任
-
Cookie窃取:
- 利用子域名共享Cookie机制
- 窃取用户认证信息
-
敏感信息泄露:
- 从S3 bucket中获取Xcode项目相关文件
- 可能包含内部开发资料
漏洞修复建议
-
AWS S3存储桶安全配置:
- 实施严格的访问控制策略
- 禁用公开读写权限
- 使用IAM策略进行精细权限控制
-
监控措施:
- 设置S3存储桶变更警报
- 定期审计存储桶权限
漏洞上报流程
- 2018-6-19:发现并上报漏洞
- 2018-6-19:苹果确认漏洞
- 2018-6-19:苹果修复漏洞
- 2018-6-22:列入漏洞名人堂并获得赏金
经验总结
- 全面侦察的重要性:即使是大公司也可能存在配置错误
- 工具组合使用:Aquatone与AWS CLI的结合使用
- 细节分析:关注HTTP头信息中的关键字段
- 漏洞利用思路:从文件上传到多种攻击场景的扩展
防御措施
- 对所有云存储服务进行安全审计
- 实施最小权限原则
- 定期扫描和监控子域名资产
- 建立完善的漏洞赏金计划以鼓励白帽报告
通过本案例,安全研究人员可以学习到如何通过系统化的侦察和测试方法发现大公司网站中的高危漏洞,同时也为企业提供了加强云服务安全配置的重要参考。