以下是安全部门检测出的hbuilder打包的app的漏洞,集成了个推,给出了解决方案无从小手啊,
好像只有hbuilder开发者才能改把,这个代码时hbuilder帮我们集成的,有谁解决了吗,请指教!!
webview 漏洞(高风险)
问题描述:在webView 下有一个非常特殊的接口函数addJavascriptInterface,能
实现本地java 和js 的交互。被测应用中存在WebView 漏洞,没有对注册JAVA
类的方法调用进行限制,导致攻击者利用addJavascriptInterface 这个接口函数穿
透webkit 控制android 本机。
漏洞地址:
以下危险api 可通过webview 对象向页面javascript 导出java 本
地接口,可能导致任意命令执行
com\igexin\push\extension\distribution\basic\k\i.java|void
j()|d.addJavascriptInterface(new PushWebExtension(b, e), "sdk");
io\dcloud\common\adapter\ui\AdaWebview.java|void
addJsInterface(String paramString, IJsInterface
paramIJsInterface)|mWebViewImpl.addJavascriptInterface(paramIJs
Interface, paramString);
io\dcloud\common\adapter\ui\AdaWebview.java|void
addJsInterface(String paramString, Object
paramObject)|mWebViewImpl.addJavascriptInterface(paramObject,
paramString);
io\dcloud\common\adapter\ui\AdaWebview.java|void
addJsInterface(String paramString1, String
paramString2)|mWebViewImpl.addJavascriptInterface(paramString2,
paramString1);
io\dcloud\common\adapter\ui\WebViewImpl.java|void
addJavascriptInterface(Object paramObject, String
paramString)|super.addJavascriptInterface(paramObject,
paramString);
com\igexin\push\extension\distribution\basic\k\i.java
修复建议:
- Android 4.2 之前版本对addJavascriptInterface 的输入参数进行过滤;
- Android 4.2 及之后版本, 使用声明@JavascriptInterface 来代替
addjavascriptInterface。 - 控制相关权限或者尽可能不要使用js2java 的bridge。
1 个回复
DCloud_App_Array
目前实现代码中只有在Android5.0及以上版本才会使用addJavascriptInterface方法,所以不存在以上漏洞。