【基础知识】
【漏洞重现】
构建一个使用Webview组件的程序,
1)AndroidManifest.xml添加网络访问权限
2)activity_my.xml添加Webview控件
3)MyActivity.java添加关键代码
其中webview-exec.html检测代码:
APP程序运行结果如下图:
可以看到,在没有使用addJavascriptInterface接口函数的情况下,也会存在远程代码执行漏洞,原因是webview组件默认调用”searchBoxJavaBridge_”对象。
当使用addJavascriptInterface接口函数时,
APP程序运行结果如下图:
可以看到,即便test类没有具体实现代码,也一样会触发漏洞。
【安全建议】
1、使用removeJavascriptInterfac
2、不用addJavascriptInterface接口函数。使用shouldOverrideUrlLoading
PS:建议android用户自行保护个人手机安全,升级系统至4.2+版本。
【扩展阅读】
http://www.cis.syr.edu/~wedu/Research/paper/webview_acsac2011.pdf
http://50.56.33.56/blog/?p=314
http://drops.wooyun.org/papers/548
http://security.tencent.com/index.php/opensource/detail/1
http://blog.csdn.net/leehong2005/article/details/11808557
转载自:http://blog.sina.com.cn/s/blog_777f9dbb0102v8by.html