看我如何发现Uber合作方网站XXE 0day漏洞并获得9000美元赏金

简介:


近期,俄罗斯渗透测试人员Vladimir Ivanov发现了反勒索数据备份服务商Code42的一个XXE 0day漏洞,利用该漏洞可以从使用Code42服务的公司窃取相关备份数据,这些公司包括Uber、Adobe、Lockheed Martin(洛克希德马丁)等。作者在这篇文章中分享了该漏洞的发现过程。


Code 42,成立于2007年,最初以个人数据保护和备份软件起家,随后便逐渐拓展到了企业数据备份和反勒索服务领域。目前该公司在全球管理并保护着大量企业和组织机构数据,而且该公司所有的数据备份和存储解决方案都是跨平台的。

漏洞发现过程

2016年5月,我在参与HackerOne平台的Uber漏洞赏金项目过程中,偶然通过测试发现了以下这个HTTP应用管理页面,这是Uber与合作公司Code42的一个系统服务:

通过该页面的API接口https://backup.uberinternal.com:4285/api/serverEnv 分析发现,其部署使用了Code42最新版本(5.2.0)的服务框架,而且Code42的相关产品在CVE漏洞库中没有任何披露漏洞,想要发现安全问题,密码破解显然不是一个可行方案,唯一可行的选择就是,去发现该系统的未知漏洞。

接下来,我从Code42官网浏览了一些公开说明文档,从中寻找涉及的API接口的方法描述,然后构造自动化的暴力猜解方式去请求这些接口,尝试发现其中一些不需要身份验证的API。幸运的是,最终发现其中一个API存在问题,任何外部用户都可以对其作出有效的登录访问:https://www.crashplan.com/apidocviewer/#SsoAuthLoginResponse

在Code42公开文档中对/api/SsoAuthLoginResponse的描述是这样的:接收SAMLResponse的GET参数,其中SAMLResponse包含了base64编码的XML用户验证数据:

由此,我构造了一个指向我个人VPS的XML外部实体对该API接口进行测试,尽管测试中使用的XXE漏洞利用代码非常简单,但出于保密,在此就不做公开。从以下测试的端口监听信息可以看出,该服务系统存在XXE外带数据(Out-of-Band)攻击漏洞:(XXE-OOB漏洞详情参考Freebuf-《DTD/XXE 攻击笔记分享》BlackHat 2013 《XXE-Out of Band Attack》

由于系该统使用了java框架,而俄罗斯的OnSec实验室曾针对Java程序的XXE-OOB攻击,作出了相关研究,并给出相应的payload,和一个通过ftp服务读取系统目录的漏洞利用脚本xxe-ftp.rb,因此,我直接用xxe-ftp程序进行了验证。

xxe-ftp.rb原理是这样的,攻击者主机运行该脚本后,8088端口作为http服务端负责获取OOB攻击payload,而8077端口用于ftp连接服务:

经验证,我成功获取到了系统服务器/home/目录下的列表,并向HackerOne平台作了漏洞报告,获取列表截图如下:

经Uber安全团队向Code42确认,这是一个0day漏洞,Uber安全团队要求我给出更多漏洞详细证明。在他们的许可下,我又作了进一步渗透测试,最终发现了备份日志的存储目录文件。以下是系统服务器本地最近的某一储存日志文件,其中包含了操作用户名和其它敏感信息:

测试结果已经很能说明问题:只要运行有Code42周边服务或托管业务的公司,我都可以利用该漏洞获取到其备份系统网站内的所有备份文件。为了解该漏洞的现实威胁,我利用Code42服务端口4285在shodan上进行识别,发现了一些使用Code42相关服务的IP,其中还包括了一家全球知名的安全公司*&^#$#!:

原文发布时间为:2017-02-19

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
JavaScript
JS自动生成速记符、拼音简写/拼音的声母(例如:“你挚爱的强哥”转换为“NZADQG”)。提取首字母,返回大写形式;提取拼音, 返回首字母大写形式(全拼)。
JS自动生成速记符、拼音简写/拼音的声母(例如:“你挚爱的强哥”转换为“NZADQG”)。提取首字母,返回大写形式;提取拼音, 返回首字母大写形式(全拼)。
27503 0
|
2月前
|
存储 人工智能 运维
企业做数据治理要多少钱?大型企业怎么做数据治理2026年实操指南
2026年,数据正式入表成核心资产。大型企业数据治理投入动辄数百万至千万,但常陷“投入无底洞”。瓴羊Dataphin以OneData方法论+AI智能体(Data Agent),提供3万–300万元/年灵活方案,TCO降低40%–65%,实现建模提效5–10倍、运维减负70%、算力节省30%,加速数据资产入表与业务变现。(239字)
|
3月前
|
存储 人工智能 安全
手把手教你安装 OpenClaw/Clawdbot 智能AI助手(超详细步骤/新手跟着走)
2026年,OpenClaw凭借强大的任务自动化能力与开源特性,成为搭建专属AI助手的热门选择,其前身为Clawdbot、Moltbot,历经版本迭代后,功能更完善、部署更简洁。阿里云针对这款工具推出了专属一键部署方案,通过预置应用镜像、简化配置流程,彻底打破了开源工具的技术门槛,让零基础新手也能轻松完成安装部署,无需掌握专业的开发知识与命令操作。
1407 9
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
不是矫情,是“抑郁”——人工智能如何看懂你没说出口的情绪
不是矫情,是“抑郁”——人工智能如何看懂你没说出口的情绪
311 0
|
机器学习/深度学习 自然语言处理 算法
YOLOv5改进 | 注意力机制 | 添加三重注意力机制 TripletAttention【完整代码】
本文介绍了三重注意力机制在YOLOv5目标检测中的应用,这是一种轻量级方法,通过三分支结构捕获跨维度交互来计算注意力权重,几乎不增加计算开销。文章详细阐述了三重注意力的原理,包括全局、组间和组内三个层次的注意力计算,并提供了将TripletAttention模块添加到YOLOv5网络的教程。作者提供了代码实现和yaml配置文件的修改指导,以及在训练脚本中设置配置文件路径的步骤。完整代码附在文章末尾,适合初学者实践。此外,文章还鼓励读者探索在不同位置添加三重注意力以进一步优化模型性能。
|
5G 网络架构
深入解析Wi-Fi中的MIMO技术及其优势
【8月更文挑战第31天】
2733 0
|
存储 固态存储 安全
服务器硬件基础知识
服务器硬件基础知识
1499 1
|
前端开发 Java 开发工具
springboot对接阿里云视频点播
在阿里云的视频点播官方文档中,可以看到是有一个上传SDK和一个服务端SDK的,上传视频可以用上传SDK里面的服务端SDK里面的java上传SDK,其他操作查询删除什么的只能用服务端SDK里面的javaSDK
|
存储 网络协议 网络安全
对象存储oss使用问题之私有图片url在服务器中无法直接打开如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
2962 0
|
安全 前端开发 Java
springboot代码混淆及反混淆代码工具
虽然加壳器在降低代码的可读性方面做得很好,但我们仍然可以看到它的主要字符串以明文形式编写,这可能会揭示它的一些功能。这就是为什么我们可能想要寻找更好的方法来混淆我们的代码。

热门文章

最新文章