2015-09-02 55 views
0

我在移动编程初学者,想知道如果Web视图是坏?我从我们公司的应用程序团队听说,启用Web查看本身就是一种安全风险(我们处理财务数据:))。使用的WebView安全风险(IOS,安卓)

我正打算将它用于一个简单的验证码但我的问题是更像

是一个web视图严格的NO NO从安全的角度?

请让我知道。

任何帮助表示赞赏。

+1

Cheeck OUT- https://stackoverflow.com/questions/39735617/best-practice-check-list-to-make-android-webview-secure/44779801#44779801 –

回答

1

这取决于你如何在你的应用程序中使用的WebView。例如,GMail应用程序使用WebView以非常安全的方式查看电子邮件。如果您将任意的第三方内容加载到您的WebView中,主要的风险就来了。浏览器通过在单独的进程中对网页进行沙盒处理来处理此问题,因此即使页面代码利用呈现引擎的某个安全漏洞并获得对其的控制权,它仍然无法代表浏览器进行操作。 WebView是单进程的,因此渲染引擎中的任何安全漏洞实际上授予恶意代码与应用程序相同的权限。

所以基本上,安全的WebView使用规则#1到里面只有负荷的可信内容。如果您需要显示用户提供的内容,请仅接受纯文本并对其进行清理。尽可能避免启用JavaScript。定位您可以为您的应用程序提供的最新API级别 - 否则,WebView可能会启用不安全的功能,以便与旧版应用程序兼容,否则将无法使用。

+0

感谢很多的评论。 Web框架是一个单一过程的观点是一个值得关注的问题。为什么我正在评估这个应用程序中显示验证码。 Captcha技术一起使用一个JavaScript来加载webview内的div内的内容。如果我们从webview中的IFrame中加载来自第三方的内容,会不会更好?它不会获得整个页面的访问权限,在这种情况下,交互也是最小的。然而,为了验证验证码,他们从那里加载了一堆javascriiptt服务器。 –

+0

@AravindR:如果页面通过JavaScript利用某些呈现器漏洞,则在iframe中加载将无济于事。如果你不完全信任你的第三方,你不应该使用他们的任何代码。从安全角度将他们的代码加载到WebView中与将他们的Java代码放入应用程序中甚至没有看到它们几乎相同:) –