一个比较老的漏洞,不能远程利用,只能通过Malicious App来攻击。
一、漏洞原理
1、漏洞原理
为了说明漏洞原理,这儿假设用户安装了两个App,第一个是攻击的App,即Benign App,另一个是Malicious App,也就是攻击者App。首先,由于Android沙箱机制的限制,Malicious App是不能访问Benign App的私有目录的。但是,如果Malicious App有了一个Webview,并且整个webview对外暴露,并且允许加载File域。那么,在Malicious App中设计一个File,并且在File中包含JS代码。那么,当Benign App加载了整个File之后,Malicious App把这个File删除。然后把Benign App的私有文件软链接到这个File,即创建了私有文件的快捷方式。此时,由于读取文件的操作实际上Benign App自己做的,所以能够读取私有文件。那么问题出在哪?就是File中的JS代码,JS文件虽然已经被删除,但是在File被删除前,JS代码已经加载。这样利用时间差,就可以读取私有文件了。