当前位置:首页百度SDK漏洞分析及防护 举报文章

百度SDK漏洞分析及防护

作者:admin    来源:用户投稿    时间:2015.11.6   

百度SDK虫洞漏洞

  近日,百度SDK被报存在WormHole虫洞漏洞,该漏洞从理论上说可以远程执行任意代码,攻击者可以窃取大量用户安卓手机数据。本文对该漏洞进行了分析及验证方法,并给出防护方案。

  本文作者 黄灿、曲文集、曾海涛

  10月14日,有人提交了百度SDK漏洞的报告, 报告中将该漏洞称为WormHole虫洞漏洞;

  11月1日,某国外安全厂商在其官方博客上,对该漏洞进行了深入分析;

  11月3日,百度声称,”关于x厂商最新报告的可能存在问题的其余代码,在我们的修复之后已成为无用代码,不会产生影响。”

  11月4日,绿盟科技安全服务部门对相关漏洞进行分析及验证。

  绿盟科技威胁响应中心持续关注百度SDK虫洞漏洞事件的进展,如果您需要了解更多信息,请联系:

  绿盟科技博客

  http://blog.nsfocus.net/

  绿盟科技威胁响应中心微博

  http://weibo.com/threatresponse

  绿盟科技微信号

  搜索公众号 绿盟科技

  百度SDK漏洞

  在产品开发过程中,软件厂商常常对外提供整合的开发环境,便于用户在此基础上快速开发自己的应用程序,在此平台上开发完成的程序,都会自动集成一些模块。所以,一旦开发平台出现问题,它所带来的危害是极为广泛的,这一点绿盟科技博客在之前的《XcodeGhost分析及在线检测》已经分析过。这方面有更为底层和经典的案例,是Ken Thompson在Unix的C编译器中植入的代码漏洞。

  此次百度SDK虫洞漏洞相关的核心代码存在于SDK的com.baidu.hello.moplus中,所有使用该SDK开发的APP,均会开放40310端口响应数据请求。虽然请求限制在本地进行,但攻击者仍然很容易绕过,这可能导致用户数据的大量泄漏。

  在2015年7月28日,曾经有人提交过类似的漏洞,当时漏洞存在于com.baidu.frontia.module.depplink中,可以通过向7777端口请求数据获取手机的IMEI值等信息。

  漏洞从何而来

  目前不知道百度SDK虫洞漏洞从何而来,是业务设计中存在逻辑错误,还是其他问题。但从下面的分析可以看出一些信息

  XcodeGhost,SDK中存在存在远程服务器地址,根据ip地址就可以追踪;

  7月SDK漏洞,手机安装相关APP后将开放7777端口,所有人均可以连接;

  11月SDK虫洞漏洞,增加了40310端口,通过构造特殊的数据包仍旧很容易绕过限制,进而连接获取数据;

  在此次测试的百度地图APP中,7777端口仍旧在监听,不过其核心逻辑已经做出了修改

  可能的影响

  • 80多个生活娱乐相关的APP受到影响,而且在一些机型出厂时,这些APP可能被预装;

  • 7月SDK漏洞中存在的7777端口,目前许多APP中仍旧存在,仍旧存在被利用的可能;

  • 此次漏洞的POC已经开始在网络流传,大量用户信息可能遭到泄露;

  • 受此影响的安卓至少版本包括 4.x -5.x

  漏洞分析

  漏洞具体分析的条目及内容比较多,下面绿盟科技安全工程师简化了一些分析步骤,以便于安全行业从业人员也可以模拟重现这个分析过程。

  测试用例

  由于在受影响的APP中,有相当多的APP会使用百度地图,故将其作为测试样例,并进行安装。

  分析目标:使用百度存在WormHole漏洞版本的SDK开发的APK应用。实际测试中被测样本超过10个。

  分析环境:Andorid 4.x/5.x

  动态分析

  启动百度地图后,通过netstat指令查看监听接口,发现应用会启动7777和40310两个端口进行监听。

  

  查看应用的AndroidManifest.xml文件,发现应用会开启一个名为com.baidu.hello.MoPlusService的服务。

  

  经测试,目前该漏洞已经修复,虽然仍然会开启7777端口进行监听,但是漏洞核心逻辑已进行修改。本次SDK漏洞的核心代码存在于com.baidu.hello.moplus中。

  

  静态分析

  通过分析代码可知,应用会开启一个轻量级的HTTP服务器NanoHTTPD,通过内嵌入JAVA的方式处理GET和POST等一系列请求。(com.baidu.hello.patch.moplus.nebula.b.a)

  

  应用在绑定好地址等信息后,会启一个新线程去处理来自远端的请求,类v中的run()函数写明了此线程是如何工作的。(com.baidu.hello.patch.moplus.nebula.b.v)。在新线程中应用会实现一个socket去进行数据交互。由while (a.a(this.a).isClosed())可知,只要服务未关闭,每当接收到InputStream时,就会实例化一个l类的对象去处理接收到的数据流。因此我们只要随着代码逻辑进入到类l中就会进一步得知应用处理数据流的逻辑。

  

  进入com.baidu.hello.patch.moplus.nebula.b.l分析代码发现对于数据包的具体解析在类g中。

  

  再继续进入类g(com.baidu.hello.patch.moplus.nebula.b.g)中,分析得知应用是通过实现抽象类的方式处理Session的,具体代码在com.baidu.hello.patch.moplus.nebula.b.w中。

  

  攻击者最后结合应用中可解析的命令和解析逻辑构造出PoC

  

  漏洞验证

  如果您使用安卓手机查看本页面,可以直接点击如下按钮进行验证。点击该按钮,你的浏览器将打开你手机的本地地址http://127.0.0.1:40310/getcuid?mcmdf=inapp_

  

  如果您在点击按钮后,出现如下画面,则说明存在相应的漏洞

  

getcuid连接的截图

  可能的攻击形式

  攻击者如果想要远程访问,需要在构造请求包的时候添加一个名为”remote-addr“的字段,并将这个字段的值置为127.0.0.1,因为应用会在解析geolocation、getcuid等指令前判断请求是否是本地请求。

  防护方案

  对于个人用户来说,请关注对应APP的升级信息,当然建议尽可能从其官方站点下载升级版本,避免遭遇二次伤害。对于企业用户来说,可以使用扫描器,扫描网络中接入的移动终端设备,检查是否存在WormHole漏洞,并通过设置放火墙规则来阻断相应端口的通信。对于企业而言,这种通过扫描器进行远程检测,也是目前更为经济、影响更小、使用更便捷的方式。

  以绿盟远程安全评估系统(NSFOCUS Remote Security Assessment System 简称:NSFOCUS RSAS)为例,在企业环境中,对业务系统部署RSAS,可以实时扫描及检测百度SDK漏洞。目前RSAS V6版本已经推出相应的插件升级包,请所有使用绿盟产品的用户尽快升级产品规则。

  产品防护

  如同木桶效应一般,业务环境的加固只是依赖于漏洞加固是不够的,整体安全等级的提升以及应对未来的攻击,安全产品是必不可少的一环。在企业环境中,部署绿盟网络入侵防护系统(Network Intrusion Prevention System,简称NIPS)为例,对业务系统部署NIPS,可以防护百度SDK漏洞可能带来的攻击。 目前NIPS已经推出 567、568、569各版本的规则升级包,请所有使用绿盟产品的用户尽快升级产品规则。

  升级办法

  绿盟科技已在软件升级公告中提供规则升级包,规则可以通过产品界面的在线升级进行。如果您的业务系统暂时还无法升级规则包,那么可以在软件升级页面中,找到对应的产品,通过下载升级包,以离线方式进行升级。

  相关升级信息请访问:

  安全产品介绍:http://www.nsfocus.com.cn/1_solution/1_2_1.html

  产品升级公告:http://update.nsfocus.com/

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:百度  漏洞  分析  防护  
  • 相关搜索
图片推荐
    找投资时,如何给自己的初创公司估值?

    找投资时,如何给自己的初创公司估值?

    笔者经常会被问到这样的一个问题,通常这个问题会在公司即将进行融资、或者是公司正在洽谈收购交易的时候被问到,这个问题就是,我公司最合适的估价是多少呢?事实上,这个问题的答案非常简单:而且就像其他任何一种
    你不是不懂咋分股权 你就是太爱粉饰太平

    你不是不懂咋分股权 你就是太爱粉饰太平

    讲真,如果把中关村创业大街上喝过的咖啡杯连起来,我觉得也可以绕地球两圈了。创业的路都前赴后继地淌了这么多年了,没有什么百度找不到的股权分配常识,与其说创业者缺乏的是知识,不如说大部分人缺乏的是对股权足
    百度将地区网站排名提前之后的优化方向

    百度将地区网站排名提前之后的优化方向

    做推广的朋友都知道这几天百度在频繁调整算法,但笔者昨天与今天都注意到一个现象。搜索泛关键词时,地区性网站的整体排名都大大提升了,而且连续3天保持如此。以往,百度只讲地区性网站提升几个排名,但这一次,笔
    一家发行唱片的广告公司究竟想唱什么样的歌?

    一家发行唱片的广告公司究竟想唱什么样的歌?

    从广告这两个字发明到现在,它就与创意密不可分。广告人的价值,在于他们是为数不多可以使用创意这项神秘能力的人,而广告公司的生命力与瓶颈,也是恰恰是在那不可复制的创意里,但在互联网不断迭代和推动模式变革的
    轻社交重沟通 微信真心不是营销工具

    轻社交重沟通 微信真心不是营销工具

    微信真的需要群发吗?  前段时间钛媒体发了一个消息称微信要取消群发,震动了整个微信界,很多人以为微信要取消公众账号群发功能了,不少人都开始考虑该往那个平台转移了,但其实原文的标题是有一个问号的,只是后
    直播平台风口成过去式 接着是死亡和内容创业风口

    直播平台风口成过去式 接着是死亡和内容创业风口

    8月15日下午,今年3月份刚完成B轮融资的斗鱼直播向《每日经济新闻》记者确认完成C轮15亿元人民币融资。同样在8月15日晚间,斗鱼直播方面进一步向《每日经济新闻》表示,本轮融资由凤凰投资与腾讯领投,深
    谈父亲节微信营销活动分享

    谈父亲节微信营销活动分享

    节日营销是是众多网络营销中很重要的一种。而针对具体的业务情况,选择适合自己的节日则尤为重要。我公司的产品是医疗器械产品,客户主要是中老年人,在体验和销售机器的过程中,子女的意见起到了很大的作用。改善父
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面