Android安全问题笔记

开发的App在安全检测工具上监测到一些问题,故特开security栏研究android app 安全问题,此文为检测到的一些安全问题

  • AllowBackup 配置

    • Android API Level 8 及其以上 Android 系统提供了为应用程序数据的备份和恢复功能

    • 此功能的开关决定于该应用程序中 AndroidManifest.xml 文件中的Application节点 allowBackup 属性值,其属性值默认是 True。当 allowBackup 标志为 true 时,用户即可通过 adb backup 和 adb restore 来进行对应用数据的备份和恢复,这可能会带来一定的安全风险。

  • WebView JS交互问题

    • 调用了高危API addJavascriptInterface,Android系统版本4.2以下可以导致远程命令执行

    • 安全检测给出的修复建议:不使用addJavascriptInterface进行javascript层与java层的通信,可以使用shouldOverrideUrlLoading或着onConsoleMessage等函数进行通信

  • 第三方平台授权信息写在了本地

    • 微信登陆授权信息secret与appid写在了本地

    • 检测平台修复建议:将信息放在服务器端,由服务器端来中转接口调用请求

  • BroadCastReceiver组件的数据接受

    • 使用registerReceiver(mReceiver,intentFilter)的方式动态注册的BroadCastReceiver是公开的组件,外部应用可以给该动态注册的BroadCastReceiver发送恶意数据

    • 检测平台修复建议:建议使用registerReceiver(BroadCastReceiver receiver,IntentFilter filter,String broadcastPermission,Handler scheduler)增加权限或使用LocalBroadCastManger

  • Intent劫持风险安全

    • 使用隐式Intent来发送广播,恶意程序可以通过注册收听同样的action的broadcastreceiver来劫持Intent,如果Intent中有敏感信息,会造成敏感信息泄露

    • 检测平台修复建议:如果Intent中包含敏感信息,那么在sendBoadcast之前需要显式指定component

  • Intent附带数据漏洞

    • 如果getIntent()的intent附带空数据、异常或畸形数据,在处理getXXXExtra()获取数据时没进行异常捕获,会出现ClassNotFoundException异常导致应用Crash

    • 阿里聚安全建议

      • 将不必要的导出的组件设置为不导出,防止引起拒绝服务,尤其是杀毒、安全防护、锁屏防盗等安全应用; 在AndroidMenifest.xml文件中,将相应组件的“android:exported”属性设置为“false”,如下示例:

        <activity android:name="XXXActivity"
                  android:exported="false"/> 
        
      • Intent处理数据时进行捕获异常通过Intent.getXXXExtra()获取的数据时进行以下判断,以及用try catch方式进行捕获所有异常,以防止应用出现拒绝服务漏洞:空指针异常 类型转换异常 数组越界访问异常 类未定义异常 其他异常

    • Android应用本地拒绝服务漏洞浅析

  • 数据存储安全问题

    • 存在安全问题的数据存储 Shared Preferences、Intentnal Storage、Android Database

    • 风险条件

      • 使用MODE_WORLD_READABLE模式创建存储文件或使用MODE_WORLD_WRITEABLE模式创建存储文件并含有"android:shareUserId" 属性值和测试签名
    • 风险原理

      • 使用MODE_WORLD_READABLE模式创建Shared Preferences文件,使得其他应用对该Shared Preferences文件具备可读的权限;
      • 使用MODE_WORLD_WRITEABLE模式创建Shared Preferences文件并含有“android:sharedUserId”属性值,使得其他应用对该应用的Shared Preferences文件具备可写的权限。
      • 在具备root权限的程序或用户对任何应用程序通过任意模式创建的的Shared Preferences文件都具有可读可写的权限
    • 修复建议

      • 避免使用MODE_WORLD_WRITEABLE和MODE_WORLD_READABLE模式创建进程间通信的文件
      • 避免将密码等敏感数据信息明文存储在Shared Preferences中
      • 避免滥用“Android:sharedUserId”属性
  • Content Provider 文件目录遍历漏洞

    • 风险触发条件
      • 对外暴露的Content Provider组件实现了opneFile()的接口
      • 且没有对文件的Uri进行有效的判断和过滤
    • 漏洞原理
      • 对外暴露的Content Provider实现了openFile()接口,其它应用可以调用该Content Provider 并调用它的openFile()方法进行数据访问,如果没有对访问权限和目标文件Uri进行有效的判断,就可以遍历访问任意可读文件
    • 修复建议
      • 将不必要导出的Content Provider设置为不导出
      • 去除没有必要的OpenFile()接口
      • 对openFile访问的文件路径进行有效判断
      • 使用签名验证来控制Content
      • Provider共享数据的访问权限:设置protectionLevel=”signature”
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,367评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,959评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,750评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,226评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,252评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,975评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,592评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,497评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,027评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,147评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,274评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,953评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,623评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,143评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,260评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,607评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,271评论 2 358

推荐阅读更多精彩内容