【御安全】Android安全开发之WebView中的地雷.pdfVIP

【御安全】Android安全开发之WebView中的地雷.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【御安全】Android安全开发之WebView中的地雷

【腾讯御安全】Android安全开发之 WebView中的地雷 0X01AboutWebView 在Android开发中,经常会使 WebView来实现WEB页面的展示 , 在Activiry中启动自己的浏览器,或者简单的展示一些在线内容等。 WebView功能强大 ,应用广泛 ,但它是天使与恶魔的合体 ,一方面它 增强了APP的上网体验 ,让APP功能更多样化 ,另一方面它也引入了 很多的安全问题。在过去几年WebView中被披露的重大漏洞包括了任 意代码执行漏洞、跨域、密码明文保存等 ,这些安全问题可以直接导致 用户敏感信息泄露 ,移动终端被恶意攻击者控制。下文将详细介绍这一 系列安全问题,罗列相关的一些案列,并提供相应安全开发建议。 0X02WebView任意代码执行漏洞 已知的WebView任意代码执行漏洞有4个。较早被公布是 CVE-2012-6636 ,揭露了WebView中addJavascriptInterface接口 会引起远程代码执行漏洞。接着是CVE-2013-4710 ,针对某些特定机 型会存在addJavascriptInterfaceAPI引起的远程代码执行漏洞。之后 是CVE-2014-1939爆出WebView中内置导出的 “searchBoxJavaBridge_”JavaObject可能被利 ,实现远程任意代 码。再后来是CVE-2014-7224 ,类似于CVE-2014-1939 ,WebView 内置导出 “accessibility”和 “accessibilityTraversal”两个JavaObject 接口,可被利用实现远程任意代码执行。 后文我们将围绕下面这段常见的示例代码展开: WebView mWebView =(WebView)findViewById(R.id.webView); ①WebSettings msetting =mWebView.getSettings(); ②msetting.setJavaScriptEnabled(true); ③mWebView.addJavascriptInterface(newTestAddJsInterface(), myjs); ④mWebView.loadUrl(getIntent().getStringExtra(url)); CVE-2012-6636 Android系统为了方便APP中Java代码和网页中的Javascript脚本交 互 ,在WebView控件中实现了addJavascriptInterface接口 ,对应示 例代码中的③ ,网页中的JS脚本可以利用接口 “myjs”调 App中的 Java代码 ,而Java对象继承关系会导致很多Public的函数及getClass 函数都可以在JS中被访问,结合Java的反射机制 ,攻击者还可以获得 系统类的函数 ,进而可以进行任意代码执行。漏洞在2013年8月被披 露后 ,很多APP都中招 ,其中浏览器APP成为重灾区。但截至目前任 有很多APP中依然存在此漏洞,与以往不同的只是攻击入口发生了一 定的变化。另外我们也发现一些小厂商的APP开发团队因为缺乏安全 意识,依然还在APP中随心所欲的使 addjs接口,明目张胆踩雷。 出于安全考虑,Google在API 17中规定允许被调用的函数必须以 @JavascriptInterface进行注解,理论上如果APP依赖的API为17 或者以上,就不会受该问题的影响。但部分机型上,API 17依然受影 响 ,并且如果APP存在此漏洞 ,且targetsdk小于 17,那漏洞的影响 可以覆盖到android4.4的终端,如果大于等于17,只能在android4.2 的机型上触发,所以前一种情况的危害目前来看依旧很大。 CVE-2014-1939 在2014年发现在Android4.4以下的系统中,webkit中默认内置了 “searchBoxJavaBridge_” ,代码位于 “java/android/webkit/BrowserFrame.java”,该接口同样存在远程 代码执行的威胁。 CVE-2014-7224 在2014年,研究人员 DaoyuanWu和 RockyChang发现,当系统 辅助功能服务被开启时 ,在Android4.4以下的系统中 ,由系统提供的 WebView组件都默认导出accessibility和accessibilityTraversal 这两个接口 ,代码位于 “android/webkit/Accessib

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档