一、平台使用不当

1.1、定义

平台使用不当包涵Android控件的配置不当或编码不当。包括Activity、Service、ContentProvider、Broadcast Receiver、Intent组件、WebView组件使用过程中配置是否规范与编码是否规范。

1.2、风险

平台使用不当会造成的风险包括组件被恶意调用、恶意发送广播、恶意启动应用服务、恶意调用组件、拦截组件返回的数据、远程代码执行等。

1.3、防范方法

1.3.1、预防组件最小化组件暴露

【规范要求】

针对不需要进行跨应用调用的组件,应在配置文件(AndroidManifest.xml)中显示配置android:exported="false"属性。

【详细说明】

组件配置android:exported="false"属性,表明它为私有组件,只可在同一个应用程序组件间或带有相同用户ID的应用程序间才能启动或绑定该服务。在非必要情况下,如果该属性设置为“true”,则该组件可以被任意应用执行启动操作,造成组件恶意调用等风险。

【代码示例】

AndroidManifest.xml配置文件中activity组件的配置方式示例。

反例:

<activity

移动安全--50--Android安全开发编码规范相关推荐

  1. Android开发编码规范pdf文件下载

    Android开发编码规范.pdf文件下载 Android开发编码规范.pdf文件下载. 公司要求成立统一的开发流程和编码规范,希望每个人的编码一致,风格一致,这样有利于提高开发效率,于是我从网上整理 ...

  2. iOS开发编码规范与审核时的注意事项

    iOS开发编码规范与审核时的注意事项 一. 编码的排版格式 1 代码的缩进应使用空格(SPACE),不能使用制表符(TAB),并且缩进以2个字符为单位. 2 空格的使用 a) 关键字与其后的表达式之间 ...

  3. 团队项目开发编码规范之一:概述

    团队项目开发"编码规范"之一:概述 发布日期:2011年3月18日星期三作者:EricHu   勤能补拙.笨鸟先飞. "程序员.程序员"顾名思义就是来编程序的人 ...

  4. 团队项目开发“编码规范”之九:代码分析

    团队项目开发"编码规范"之九: 代码分析 发布日期:2011年3月17日星期三作者:EricHu                                           ...

  5. 团队项目开发编码规范

    团队项目开发"编码规范"之一:概述 "程序员.程序员"顾名思义就是来编程序的人员.他们和一般工作人员是一样的,都需要合作,可能为了一个大型项目程序会有十人以上或 ...

  6. 软件开发编码规范_如果您只喜欢编码,请不要成为软件开发人员

    软件开发编码规范 If you are starting now or thinking about to start a software development career. Or even i ...

  7. php 编码规范哪些_整理了一份比较全面的PHP开发编码规范.

    这些年来多从事Linux下PHP和C相关的开发,带过很多项目和团队,下面是根据经验整理的PHP编码规范,可以用作给大家的范例和参考,根据需要进行取舍和修改! (可能最新的一些php5的规范不够完整,今 ...

  8. 中科方德java开发编码规范_插件推荐:如何将Java编码规范落地实际开发中

    一个软件需要花费80%的生命周期成本去维护. 几乎没有任何软件的整个生命周期仅由其原作者来维护. 编码规范改善软件的可读性,让工程师更快更彻底地理解新的代码. 如果你将源代码转变为一个产品,那么您需要 ...

  9. 关于PHP开发编码规范

    PHP编码规范     作者:中国资讯网 来源:zixuen.com 加入时间:2005-5-12 1. 介绍 1.1. 标准化的重要** 标准化问题在某些方面上让每个人头痛,让人人都觉得大家处于同样 ...

  10. Objective-C开发编码规范

    针对自己的编码检查问题,改正为以下编码规范: 1. 协议( Protocols ) 在书写协议的时候注意用 <> 括起来的协议和类型名之间是没有空格的,比如 IPCConnectHandl ...

最新文章

  1. 通用AI咋发展?向大脑学习是条路子
  2. Git之常见的标签操作
  3. Angular self study 2 - compile how is hello {{ name }} compiled
  4. 算法 --- 罗马数字转整数
  5. Vue + Spring Boot 项目实战(三):使用IntelliJ IDEA快速生成 Vue.js 项目
  6. mysql 带宽测试工具_MySQL自带的性能压力测试工具mysqlslap详解
  7. 订单生产计划表范本_服装生产管理必看丨一文解决车间管理混乱
  8. LeetCode(1122)——数组的相对排序(JavaScript)
  9. IntelliJ IDEA 2017 汉化包及教程
  10. ThinkPad E450 10.11 驱动HD4400的注意即解决方法
  11. mousetrap.js使用详解
  12. Python-实现(整蛊)消息批量发送
  13. 90后大学生卖煎饼月收入4k
  14. 如何在PPT文件中插入文件, 并且发给其他人文件不失效
  15. 致创业新人,我网络创业的一些心得。
  16. 【loadrunner】——利用loadrunner进行压力测试
  17. 王卫,零售风口练习生
  18. Java码农进阶之路~数组的深进浅出
  19. Edge浏览器打开csdn无法使用搜索
  20. Python3 百度IP 查询 接口

热门文章

  1. 刷完leetcode的二叉树中等题,请允许我小小的嘚瑟一把
  2. android x86还是arm,Android x86是否模拟ARM?(Does Android x86 emulate ARM?)
  3. 移动web微金所实战项目——导航栏
  4. 雷军 | 我十年的程序员生涯
  5. GROMACS中mdp文件注解小结
  6. tomcat的startup里为什么有突然多出来了一行这个NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-
  7. maya2018拓扑功能实现
  8. Leetcode1407. 排名靠前的旅行者
  9. HYS与七夕节大作战 vijos
  10. 单细胞论文记录(part9)--Spatial charting of single-cell transcriptomes in tissues