近期,俄罗斯渗透测试人员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,其中还包括了一家全球知名的安全公司*&^#$#!:

漏洞披露进程

  • 2016.5.6 通过HackerOne向Uber提交最初漏洞报告;
  • 2016.5.23 Code42更新了软件,并释出了最新安全的5.2.0.1版本软件;
  • 2016.6.28 Uber向我发放了9000美元漏洞赏金;
  • 2016.8.24 Code42要求我待其所有客户公司部署完最新版软件后再发表该漏洞的分析文章;
  • 2017.1.24 Code42告知我可以发表文章。

作者:clouds
来源:51CTO

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

  1. 未发现数据源名称并且未指定默认驱动程序_看我如何发现NVIDIA GeForce Experience代码执行漏洞...

    0x01 前言大家好,我是来自Chengdu University of Technology的Siyuan Yi,本人是一名安全爱好者,平时喜欢搞搞逆向,玩玩CTF.不久前,我发现了我的第一个0da ...

  2. 教你怎么看一个网站是否存在漏洞!

    教你怎么看一个网站是否存在漏洞!!!  漏洞  近来很多网站受到了各种各样形式的攻击,黑客攻击的动机各不一样,黑客人攻击的目标也有不确定性,作为一家企业的网管.或CEO您是否担心您的网站也遭受同样的命 ...

  3. 还能再山寨点吗?(去哪网quna VS 去哪儿网qunar)——记发现的山寨网站经历

    还能再山寨点吗?(去哪网quna VS 去哪儿网qunar) --记发现的山寨网站经历 今天买机票先用手机登陆去哪儿网,通过百度搜索引擎进去的.然后下好订单,由于支付宝账号没有钱需要网银支付,所以准备 ...

  4. 白帽子发现美军网站SQL注入漏洞,可获取敏感数据

    去年有报道称,美军收购软件漏洞为网战准备.而美军自己的网站和服务器究竟又有多安全?一名独立安全研究者已经发现了美军网站的几个较为严重的安全漏洞. 安全专家称,这些漏洞说明了美国防部网络安全基础的脆弱性 ...

  5. 看我如何发现(并修复)Python 源代码中的漏洞

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 James Kettle 此前曾就 web 缓存投毒发布了一篇研究文章,本文作者为了更深入地了解这个领域的知识并查找开源领域中的相关漏洞,研究了 ...

  6. 【实用】找实习找工作的看过来!法国大大小小招聘网站都在这儿

    http://www.aiweibang.com/yuedu/39870881.html [实用]找实习找工作的看过来!法国大大小小招聘网站都在这儿了 支招 很多同学向我们询问找工作的途径,其实问谁都 ...

  7. 自媒体人日常必看的7个运营学习网站,记得收藏起来

    既然选择做自媒体,那粉丝.流量这是无法绕开的话题如何增粉.如何增加阅读量?一方面需要我们在实践中不断摸索,另一方面需要我们不断地学习运营知识,今天就给大家推荐自媒体人日常必看的7个运营学习网站. 1. ...

  8. live2d 看板娘 简单添加看版娘到自己的网站

    简单添加看版娘到自己的网站 关注公众号后台回复  "看板娘"  获取全部文件(接口,源代码). 我们先来看一下我们的网站会变成什么样吧! http://www.djyqxbc.vi ...

  9. 今天发现好多大网站感染木马程序Trojan.JS.Redirector.ar,pagead2.googlesyndication.com

    今天发现好多大网站感染木马程序Trojan.JS.Redirector.ar,pagead2.googlesyndication.com 包括新浪,csdn都感染.听说是google的子域名啊. 木马 ...

最新文章

  1. rust腐蚀 木制窗户怎么修_装修窗帘怎么选最划算?记住这3点,至少能省大几千...
  2. 无需Get更多技能,快速打造一个可持久化的任务调度
  3. 【控制】《多智能体系统一致性与复杂网络同步控制》郭凌老师-第8章-Lurie 型动态网络自适应牵制控制
  4. Intel VT学习笔记(六)—— VM-Exit Handler
  5. SVN之如何解决从一个svn路径下载项目快速提交到其它svn路径
  6. HTTPS下导出excel失败解决办法
  7. Android中GC的触发时机和条件
  8. 开源Registry项目Harbor源代码结构解析
  9. Oracle12c部署,允许远程访问
  10. android 点动态显示图片,Android用RecyclerView实现动态添加本地图片
  11. 改变元素属性方法_IMR:全球品牌如何结合本土文化元素以提高品牌评价 | 唧唧堂论文解析...
  12. mac 备份文件 太大 时间机器_新手必看!加速 Mac 时间机器备份速度教程,Time Machine 备份太慢的解决方法...
  13. 1、CSS height 属性,2、Flex 布局教程:实例篇,3、CSS 链接,4、CSS display 属性,5、表格,
  14. u3d_fw 框架使用
  15. 小学生听力测试软件,中小学英语听力软件
  16. 层次分析之算术平均法、几何计算法、特征值法计算权重 matlab实现
  17. 青龙羊毛---小龙传奇
  18. 手机黑圆点怎么打_输入法:外国人名字中间的点(实心小黑点)怎么打出来?...
  19. 【ZOJ2750】Idiomatic Phrases Game(最短路)
  20. [aria2c]使用aria2c下载“任务出错”的bt种子

热门文章

  1. DataTables鼠标停留高亮行并且鼠标点击二倍高亮行
  2. Tomcat根目录下静态html怎样访问,避免走坑
  3. VueRouter的安装以及基本使用
  4. 第一个SpringMVC入门程序
  5. 聊一聊,用户画像的前世今生
  6. 深度干货 | 多维分析中的 UV 与 PV
  7. 案例 | 日活提升 50%,海尔智慧厨房平台如何引领行业革命?
  8. hbase集群部署与测试(2017)
  9. mikrotik ros ***借线
  10. puppetter安装就踩坑-解决篇