当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0152507

漏洞标题:360手机助手设计缺陷可进行部分远程操作(有限制)

相关厂商:奇虎360

漏洞作者: 路人甲

提交时间:2015-11-09 11:37

修复时间:2015-12-17 14:48

公开时间:2015-12-17 14:48

漏洞类型:设计错误/逻辑缺陷

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-11-09: 细节已通知厂商并且等待厂商处理中
2015-11-09: 厂商已经确认,细节仅向厂商公开
2015-11-12: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2016-01-03: 细节向核心白帽子及相关领域专家公开
2016-01-13: 细节向普通白帽子公开
2016-01-23: 细节向实习白帽子公开
2015-12-17: 细节向公众公开

简要描述:

360手机助手设计缺陷可进行部分远程操作(有限制),可以被远程操作访问任意URL,下载、安装、开启任意应用。

详细说明:

在手机上安装并开启360手机助手后,发现它监听了38517端口。而且此端口没有bind到本地,意味着任意能访问到它的主机都可以连接到这个端口。

1.png


进一步查看发现,360手机助手在本地通过NanoHttpd实现了一个server。其serve方法如下:

2.png


在里面我们看到了很多request,例如/in,/opeanApp,/openPage, 等等,显然360手机助手可以通过接收client发来的request来进行各种操作,如打开应用,访问URL等。这个方法虽然在一开始获取了一下http-client-ip,但是并没有据此进行任何判断。意味着来自任意地址的访问仍然可以被处理。
对于/openPage这个request,360手机助手首先会从parameter中取得url,然后会进行如下的判断:

3.png


看起来360手机助手对URL的来源进行了限制,仅允许访问几个自己的域名。但是不幸的是,这个限制实际上可以轻易被绕过,因为我们知道,在**.**.**.**中点击搜索到的网页都是要通过**.**.**.**跳转一层的,因此可以很容易构造一个从**.**.**.**到任意URL的跳转。例如通过该URL我们可以直接访问手机新浪网:
http://m.**.**.**.**/jump?u=http://**.**.**.**/&m=853640
在根据上面的域名后缀判断URL的合法性之后,360手机助手会直接在app内打开这个URL。
所以,我们只需要一条简单的命令就可以远程让360手机助手访问URL:

curl --data-urlencode “http://m.**.**.**.**/jump?u=
http://**.**.**.**/&m=853640“ **.**.**.**/openPage


/in这个request可以被用来实现任意apk的下载和安装,它接收的paramater很多:

4.png


但是实际上我们只需要提供url和sign两个参数即可。sign是用来对url参数进行校验的,算法很简单:

sign = MD5_hexstr(url + “mobilemgr_wififind”)


校验完这个request参数的合法性之后,该方法会调用如下方法来执行应用的下载和安装:

5.png


在有root的机型上或者智能安装功能启动的机型上,应用的安装甚至不需要用户的确认。
/opeanApp可以被用来开启本地的任意一个应用,它只需要两个参数:apkId和sign,其中apkId就是应用的包名,而sign的算法和/in中一样:sign = MD5_hexstr(apkId + “mobilemgr_wififind”)。

6.png


经测试360手机助手一直到3.2.61版本均有上述问题。

漏洞证明:

修复方案:

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2015-11-09 13:31

厂商回复:

感谢提交,报告中提到的360产品老版本的安全问题是有安全防护措施的,如云端和服务端的安全检查,我们在发布的最新版本中也加强了安全防护措施。
报告中提到的web安全问题,此处本身有签名校验安全防护措施,我们会再加强安全措施。根据您的建议,我们还会再进一步加强安全防护措施。

最新状态:

暂无