漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0113325
漏洞标题:以爱奇艺为例说明如何利用安卓程序更新导致远程木马植入(其它应用普遍存在)
相关厂商:奇艺
漏洞作者: 小手冰凉
提交时间:2015-05-11 10:22
修复时间:2015-08-09 10:40
公开时间:2015-08-09 10:40
漏洞类型:远程代码执行
危害等级:高
自评Rank:18
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-05-11: 细节已通知厂商并且等待厂商处理中
2015-05-11: 厂商已经确认,细节仅向厂商公开
2015-05-14: 细节向第三方安全合作伙伴开放
2015-07-05: 细节向核心白帽子及相关领域专家公开
2015-07-15: 细节向普通白帽子公开
2015-07-25: 细节向实习白帽子公开
2015-08-09: 细节向公众公开
简要描述:
安卓程序更新导致远程木马植入(普遍存在)
详细说明:
当我们一手机为入侵目标时,最大的问题就是木马植入。如果我们已经进入内网,控制了wifi,那么就想办法将我们的程序植入到目标手机,之前出现过webview的执行漏洞可以做到,但是现在那个漏洞已经基本不存在了,我们在此处发下的漏洞是利用目标手机上已存在的程序做我们的“下载者”帮助我们下载安装木马。这个漏洞普遍存在手机程序中,这里以爱奇艺手机端为例子。当我们手机上使用较旧版本的程序时,在启动时都会查询服务器发现新版本并提示用户更新。如下图
抓取更新数据包如下
其中有“version=5.4”就是带着目前版本号就行查询,然后返回新版本的介绍和下载地址。我们使用arp攻击替换返回后的数据中的APK网址为我们的木马网址,就能让爱奇艺帮我们安装木马了。这里我们使用burpsuite来模拟攻击,木马假设为“百度手机助手”,添加替换如图,
点击更新后,效果如图
当时这样还有个问题,如果别人手机上都是最新版本的怎么办,那根本就不会返回更新地址。为了解决这个问题我们可以这样做,以关键字检测或者是事先收集好字典来找到version字段,然后把版本的数值降低一个,对于本例子来说假设最新版和手机上都是version=5.4,那我们就把请求包中的5.4改成5.3 这样服务器端就会以为程序版本低了然后提示更新。
过程如图
这个还有很多可以打磨的细节,例如可以事先维护一个库来保存常用程序的请求包格式,并把木马图标和名字伪装成目标程序,然后根据程序下载木马,这样效果应该会好
ps:爱奇艺这里的请求包中的校验字段似乎没有效,更改版本号之后请求依然有效。
漏洞证明:
修复方案:
使用自有方法对发送的数据包进行校验,防止篡改请求数据包
对返回的数据包添加校验,防止篡改返回数据包
版权声明:转载请注明来源 小手冰凉@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:5
确认时间:2015-05-11 10:38
厂商回复:
感谢关注爱奇艺PPS,链路劫持攻击成本较高,大范围利用的可能性低。 我们后续会考虑增加签名校验和SHA1校验。 感谢支持
最新状态:
暂无