我正在开发一个主要用 Native 编写并支持 Ice Cream Sandwich 的应用程序。但是,我需要添加一些 WebView。关于 WebView 安全性有很多讨论,当我使用 setJavaScriptEnabled(true) 时,它给了我一个警告:“使用 setJavaScriptEnabled 可能会将 XSS 漏洞引入您的应用程序,请仔细查看。”
只是要非常小心地使用 WebView 和 setJavaScriptEnable(true)。我已关注Android WebView 安全提示 and 建议。但没有最佳实践检查清单。
到目前为止我所做的:
- 仅将受信任的内容加载到 WebView。来自本地 html 或来自我们的后端。
-
通过实现拦截来自WebView的所有请求
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// magic
return true;
}
});
- 确保所有后端请求都使用 https 并且仅发送到我们的后端。
- 检测 SSL 警告。
- 校验和检查本地 html/JavaScript 文件。
- 缩小 JavaScript 文件
- 更新安全提供程序以防止 SSL 漏洞
还有一些其他不专门针对WebView的保护,例如加密消息和越狱检查等。
我还缺少什么吗?我的应用程序的安全性如何?
Thanks
As per doc,
要为应用程序中的所有 WebView 启用安全浏览,请添加
清单标签:
<manifest>
<meta-data android:name="android.webkit.WebView.EnableSafeBrowsing"
android:value="true" />
. . .
<application> . . . </application> </manifest>
由于 WebView 是作为单独的 APK 分发的,因此安全浏览
WebView 现已适用于运行 Android 5.0 及更高版本的设备。
只需在清单中添加一行,您就可以更新您的应用程序并
立即提高大多数用户的安全性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)