Webview组件跨域访问风险

检测iOS App程序中是否可利用Webview组件跨域访问读取或修改文件的风险


WebView组件是iOS用于显示网页的控件。当iOS应用中使用了UIWebView或者开启了allowFileAccessFromFileURLs和allowUniversalAccessFromFileURLsActivity组件时,该WebView允许通过file url对http域或https域进行访问,若未对访问的路径进行严格校验,攻击者可利用该漏洞,远程获取手机应用沙盒内所有本地文件系统内容,包括浏览器的Cookies、用户的配置文件、文档等敏感信息,甚至远程打开并加载恶意HTML文件等。

这是检测机构反馈的内容!

建议开发者使用WKWebView组件。


WKUserContentController*userContentController=[[WKUserContentController alloc]init];[selfregisterAllJavascriptWithUserContent:userContentController];WKWebViewConfiguration*config=[[WKWebViewConfiguration alloc]init];config.userContentController=userContentController;config.preferences.javaScriptEnabled=YES;config.preferences.javaScriptCanOpenWindowsAutomatically=YES;config.suppressesIncrementalRendering=YES;// 是否支持记忆读取[config.preferences setValue:@YES forKey:@"allowFileAccessFromFileURLs"];if(@available(iOS10.0,*)){[config setValue:@YES forKey:@"allowUniversalAccessFromFileURLs"];}


所以用这个方法解决跨域可能会有风险;

你可能感兴趣的:(Webview组件跨域访问风险)