查看原文
其他

Chrome在野漏洞分析(CVE-2022-2856)

启明星辰 ADLab 2023-01-16

更多安全资讯和分析文章请关注启明星辰ADLab微信公众号及官方网站(adlab.venustech.com.cn)












一、漏洞背景


8月16日,Google Chrome发布更新[1],修复了11个安全问题,同时指出CVE-2022-2856存在在野利用。对此,启明星辰ADLab对该漏洞进行了跟踪分析。


二、影响版本


  • <104.0.5112.101 for Mac and Linux
  • <104.0.5112.102 for Windows
  • <104.0.5112.97 for Android

三、漏洞分析


Intents作为web app之间的通信桥梁,大大提高了代码的复用性,加强了程序的鲁棒性。W3C受Android Intents 系统的启发,提出了Web Intents[2]。chromium对其进行了实现,并使用Java处理Intents的核心部分[3]。

Intents的结构可参考Android Intents[4],大致结构如下:

intent: HOST/URI-path // Optional host #Intent; package=[string]; action=[string]; category=[string]; component=[string]; scheme=[string]; extras end;
package和component表示处理该Intents的包和组件。action表示执行的活动类型,如ACTION_VIEW 表示要显示请求的内容。category对活动做了更进一步的说明,如CATEGORY_HOME表示设备启动时执行的第一个活动,CATEGORY_BROWSABLE表示活动可以从浏览器安全启动。extras表示组件要处理的附加信息,信息的类型有多种,S表示字符串类型。

由于Chrome对Intents输入校验不足,攻击者可通过钓鱼等方式诱导用户打开web页面,从而导致远程代码执行。通过查看补丁[5],可知漏洞出现在文件ExternalNavigationHandler.java中,该文件是处理intent登陆语义的核心组件。函数isViewIntentToOtherBrowser用来判断在执行Intents请求前是否通知用户。

如果action不是ACTION_VIEW并且不包含sel,则认为是安全浏览,可静默执行Intents。否则再对包名进一步比对来确定是否安全。

当向baidu search APP发送intent请求,避免设置action为ACTION_VIEW 以使得chromium认为该请求是安全浏览,并附加参数让其处理。在未修复的chromium Android 版本中(104.0.5112.0 dev)测试,访问http server。

点击test.html 进行intent请求,chromium直接跳转到百度搜索APP。

如果一个APP具有浏览器可处理的intent,intent通过私有的action或者设置包的一些属性等,可使得chromium认为该intent 不需要提醒用户,直接打开APP。如果该APP可以处理一些额外的参数,比如打开一个url,那么就可以使用intent 实现隔山打牛的攻击,使得APP可能执行远程任意代码。从上面的例子中可见,带有额外参数的intent可以直接打开APP。这就提供了攻击途径。

在补丁代码中,chromium认为带有额外参数的intent,需要进一步判断是否是安全的intent,而不是判断action的类型。

在已修复的chromium Android版本中(107.0.5259.0 dev)测试,浏览器明确提示用户做出选择。




参考链接:

[1]https://chromereleases.googleblog.com/2022/08/stable-channel-update-for-desktop_16.html?m=1[2]https://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html[3]https://source.chromium.org/chromium/chromium/src/+/main:components/external_intents/android/java/src/org/chromium/components/external_intents/[4]https://developer.android.com/reference/android/content/Intent#ACTION_POWER_CONNECTED[5]https://chromium-review.googlesource.com/c/chromium/src/+/3820605






启明星辰积极防御实验室(ADLab)





ADLab成立于1999年,是中国安全行业最早成立的攻防技术研究实验室之一,微软MAPP计划核心成员,“黑雀攻击”概念首推者。截止目前,ADLab已通过CVE累计发布安全漏洞近1100个,通过 CNVD/CNNVD累计发布安全漏洞2000余个,持续保持国际网络安全领域一流水准。实验室研究方向涵盖操作系统与应用系统安全研究、移动智能终端安全研究、物联网智能设备安全研究、Web安全研究、工控系统安全研究、云安全研究。研究成果应用于产品核心技术研究、国家重点科技项目攻关、专业安全服务等。






您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存