WebView安全漏洞面试问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebView安全漏洞面试问题相关的知识,希望对你有一定的参考价值。

参考技术A 需要了解

1.WebView常见的一些坑

2.关于WebView的内存泄漏问题

----------------Web常见的一些坑-------------------

1.该漏洞源于程序没有正确限制使用WebView.addjavascriptlnterface方法,远程攻击者可以通过使用JavaReflectionApi利用该漏洞执行任意Java对象的方法

2.webView在布局文件中使用:webview写在其他容器中时

    解决办法:需要销毁webView 在Ondestory方法里先把linelayout里的WebView.remove掉 然后再调用webView的removeAllviews和Destory方法 才能真正的将WebView销毁 从而不导致内存泄漏

3.webviewClient.onPageFinished(会判断网页内容是否真的加载完毕,如果当前正在加载的网页产生跳转,这个方法就会被调用无数次) ---> 所以调用:WebChromeClient.onProgressChanged

4.后台耗电

5.WebView硬件加速导致页面渲染的问题(容易出现页面加载白块 页面闪烁)

    解决办法:设置WebView暂时关闭硬件加速

-----------------关于WebView的内存泄漏问题-----------------

  1.为什么会造成内存泄漏?

    因为WebView首先会关联Activity而内部执行的操作会在新的线程当中.Activity的生命周期和新线程的生命周期是不一样的所以说导致了WebView他会一直持有activity的对象引用不能回收、

  2.如何避免内存泄漏?

    方法一:开启独立进程给WebView进行操作 (会牵扯到近程通信比较麻烦)

    方法二:动态添加WebView (我们要对传入WebView的Context进行弱引用 在Activity停止时remove掉)\

开发过程中通常使用方法一 因为 1>这个webview使用完毕后直接杀死进程防止内存泄漏

      2>我们App的主进程减少了内存容量

带有内容安全策略的recaptcha中的Webview iOS问题

【中文标题】带有内容安全策略的recaptcha中的Webview iOS问题【英文标题】:Webview iOS problem in recaptcha with Content Security Policy 【发布时间】:2021-07-15 17:11:11 【问题描述】:

我最近在iOS上做了一个webview,我遇到了以下问题

Contant 安全策略指令“script-src”的源列表 包含无效来源:“严格动态”。会被忽略

问题只存在于 Safari 浏览器和 webView 中,请有人帮助我。

【问题讨论】:

【参考方案1】:

Safari 浏览器does not support a 'strict-dynamic' 令牌。检查浏览器控制台,那里应该有警告:

The source list for Content Security Policy directive ‘script-src’ contains an invalid source: ”strict-dynamic”. It will be ignored

【讨论】:

以上是关于WebView安全漏洞面试问题的主要内容,如果未能解决你的问题,请参考以下文章

android WebView详解,常见漏洞详解和安全源码(下)

带有内容安全策略的recaptcha中的Webview iOS问题

android WebView详解,常见漏洞详解和安全源码

Android安全开发之WebView中的地雷

Android安全开发之WebView中的地雷

你不知道的 Android WebView 使用漏洞