美文网首页
Android常见漏洞解决

Android常见漏洞解决

作者: SoundYoung | 来源:发表于2019-03-21 16:40 被阅读0次

1 , WebView跨域访问漏洞

问题描述:

该漏洞产生的原因是在Android应用中,WebView开启了file域访问,且允许file域对http域进行访问,同时未对file域的路径进行严格限制所致。攻击者通过URL Scheme的方式,可远程打开并加载恶意HTML文件,远程获取APP中包括用户登录凭证在内的所有本地敏感数据

问题解决:

在laodurl方法之前,加入如下代码

try {

    if (Build.VERSION.SDK_INT >= 16) {

        Class<?> clazz = webView.getSettings().getClass();

        Method method = clazz.getMethod(

                "setAllowUniversalAccessFromFileURLs", boolean.class);

        if (method != null) {

            method.invoke(webView.getSettings(), true);

        }

    }

} catch (IllegalArgumentException e) {

    e.printStackTrace();

} catch (NoSuchMethodException e) {

    e.printStackTrace();

} catch (IllegalAccessException e) {

    e.printStackTrace();

} catch (InvocationTargetException e) {

    e.printStackTrace();

}

2,程序数据任意备份

问题描述:

安卓AndroidManifest.xml文件中android: allowBackup为true,app数据可以被备份导出

解决办法:

AndroidManifest.xml 配置文件中中设置为android:allowBackup=”false”

3,硬编码风险

问题描述:

硬编码是指将可变变量用一个固定值来代替的方法,用这种方法编译后,如果以后需要更改此变量就非常困难了。最好的方法是,将一个固定数值定义为一个标记,然后用这个特殊标记来取代变量名称。当标记名称改变时,变量名不变。这样,当重新编译整个程序时,所有变量都不再是固定值,这样就更容易的实现了改变变量的目的。

解决办法:

不要在类中使用直接的url而是要配置在values中

4,WebView明文储存密码漏洞

问题描述:

WebView默认开启密码保存功能mWebView.setSavePassword(true),如果该功能未关闭,在用户输入密码时,会弹出提示框,询问用户是否保存密码,如果选择"是",密码会被明文保到/data/data/com.package.name/databases/webview.db

解决办法:webSettings.setSavePassword(false);

5,WebView远程代码执行漏洞

问题描述:

Android API level 17以及之前的版本,由于程序没有正确限制使用addJavascriptInterface方法,远程攻击者可通过使用Java Reflection API利用该漏洞执行任意Java对象的方法。通过addJavascriptInterface给WebView加入一个JavaScript桥接接口,JavaScript通过调用这个接口可以直接与本地的Java接口进行交互。导致手机被安装木马程序,发送扣费短信,通信录或者短信被窃取,甚至手机被远程控制。

解决办法:

if(Build.VERSION.SDK_INT=<17){

webView.removeJavascriptInterface("searchBoxJavaBridge_");

    webView.removeJavascriptInterface("accessibility");

    webView.removeJavascriptInterface("accessibilityTraversal");

}

6,Activity最小化特权

7,Sevice最小化特权



相关文章

  • Android常见漏洞解决

    1 ,WebView跨域访问漏洞 问题描述: 该漏洞产生的原因是在Android应用中,WebView开启了fil...

  • Android安全问题

    Android安全问题--漏洞及解决方案(转) 关键字:漏洞解决方案Android安全问题 1. 程序可被任意调试...

  • android常见漏洞

    一、组件本地拒绝服务漏洞: 漏洞描述: 组件暴露给外部后,在外部可以通过Intent启调app中的组件,如果组件中...

  • Android常见漏洞

    Android的安全不容易做,但是可以通过第三发的安全扫码软件进行一定的安全措施还是有必要的,下面内容都是通过第三...

  • Android常见漏洞类型

  • WebView详解

    1、常见的坑1)Android API level 16以及之前的版本存在远程代码执行安全漏洞,该漏洞源于程序没有...

  • WebView面试详解

    一、WebView 常见的一些坑 1. webview 在android api16以及之前版本的安全漏洞,该漏洞...

  • WebView面试详解

    1、WebView常见的一些坑 1.1Android API 16以及之前的版本存在远程代码执行安全漏洞,该漏洞源...

  • 深入浅出Android应用服务端安全漏洞之SQL注入漏洞与文件上

    在前三周的时间里,蒲公英为大家简要介绍了Android应用APP端的常见漏洞,它们分别是: Android 开发 ...

  • Android studio 常见的问题以及解决方式

    android--------Android Studio常见问题以及解决方式[https://www.cnblo...

网友评论

      本文标题:Android常见漏洞解决

      本文链接:https://www.haomeiwen.com/subject/mrwqvqtx.html