应用商店和应用的安全管理机制

  • 1 概述
  • 2 应用商店管理机制
    • 2.1 苹果App Store的应用分发机制分析
    • 2.2 谷歌Play Market的应用分发机制分析
    • 2.3 其他第三方商店的应用分发机制分析
  • 3 终端应用管理机制
    • 3.1 应用签名检查
    • 3.2 应用权限申请
    • 3.3 应用调用能力管理
  • 4 可信应用和可信应用商店

1 概述

丰富多彩的应用是智能终端最重要的组成部分,但海量应用也给智能终端和消费者带来各种各样的安全风险,应用安全是移动互联网信息安全的关键。
应用安全贯穿应用的内容分发过程以及使用过程的始终。当前,应用内容审核及分发管理由各种各样的应用商店来保障,而应用使用安全则通过构建在智能终端系统的应用管理机制来维护

2 应用商店管理机制

应用商店体系由一个应用下载平台和一个终端客户端组成,为支持开发者的应用开发工作和应用作品上传等,通常还包括一个开发者社区。
通用的应用审核机制包括如下几方面:
1)签名审查,支持证书签名的商店会对开发者的应用签名进行审查,以保证应用来源的合法性。
2)内容审查,保证应用不违反当前法律、法规的各项要求,检查应用内容是否涉嫌侵权等。
3)应用收费情况检查,检查应用的收费点、价格、收费方式等,保障用户的消费安全。
4)安全性检查,检查应用是否有木马、病毒等安全风险。
5)功能性检查,依照开发者说明书对应用进行测试,验证应用的功能是否达到设计要求。

2.1 苹果App Store的应用分发机制分析

iOS AppStore在应用审核、上架、下载等方面的管理机制都有相应的安全措施。
苹果App Store应用发布流程如下:
开发者完成应用的开发和测试后,需要为这个应用创建唯一的AppID,然后申请获得通过WWDR的CA数字证书,为自己的应用签名,应用上传之后会经过苹果的审核,通过苹果严格的安全测试的应用方可在App Store上架。
经过签名的WWDR(WWDR, Apple WorldwideDeveloper Relations Certification Authority)的CA数字证书采用通用的X509格式,以PKCS#12格式存储,包含用户的公钥、用户个人信息、证书颁发机构信息、证书有效期等信息以及证书签名。证书格式如下图所示。
证书的数字签名是将上述证书本身的内容使用散列算法得到一个固定长度的信息摘要,然后使用自己的私钥对该信息摘要加密生成数字签名,整个过程如下图所示。
iOS系统持有WWDR的公钥,系统首先会对证书内容通过指定的散列算法计算得到一个信息摘要;然后使用WWDR的公钥对证书中包含的数字签名解密,从而得到经过WWDR的私钥加密过的信息摘要;最后对比两个信息摘要,如果内容相同就说明该证书可信。整个证书验证过程如下图所示。
在验证了证书可信以后,iOS系统就可以获取到证书中包含的开发者的公钥,iOS系统通过从证书中获取到的公钥来验证开发者用该公钥对应的私钥签名后的代码,验证资源文件等有没有被更改破坏,并确定开发者的合法身份。

App Store对应用的审核非常严格,涉及功能、元数据、位置信息收集、推送通知、游戏信息管理、广告、商标和商品外观、内容、用户界面、支付机制、设备保护、隐私保护等各个方面。

2.2 谷歌Play Market的应用分发机制分析

Google Play Market的应用发布流程如下图所示。
与苹果App Store流程相比,Google Play Market的流程中没有申请AppID的环节,因为Android应用开发环节只需要定义应用名称,没有AppID的概念。
终端通过Google Play Market下载和安装应用的流程如下:
1)登录和验证授权:终端通过用户Google Play Market账号密码登录,登录成功之后,Google Play Market服务器将返回授权认证参数。
2)应用下载安装:在Google Play Market服务器验证用户登录之后用户根据应用名称,获取应用的唯一标识ID,向服务器请求下载应用。Google Play Market服务器根据用户提交的授权认证参数及应用标识返回包含应用下载链接及cookie的信息给客户端,客户端解析信息文本提取应用的下载链接。客户端根据上一步获取的下载链接及cookie向服务器请求下载应用。
3)终端检查应用的签名证书,校验通过后安装。

2.3 其他第三方商店的应用分发机制分析

应用分发机制上,第三方商店大多类似,通过应用测试控制应用质量,通过安装在用户终端的商店客户端推送应用,大多不过度参与对应用运行其他环节的管控。
联通沃商店应用发布流程:
(1)注册:联通沃商店的开发者入口是联通开发者社区,网址http://dev.wostore.cn/,根据注册页面注册流程指示使用手机号完成注册;
(2)签约:签约部分,主要是针对游戏类应用的内容购置和联运的合作协议、应用内支付的合作协议的签约,以及通用应用的信息安全责任承诺书、廉洁合作协议、保密协议等的签署。
(3)应用上传:开发者从开发者社区的“上传应用”栏目处上传应用,区分计费和免费应用类别,并针对计费应用提交计费点说明等文档。
(4)评测:开发者应用上传后,提交作品评测。
(5)应用上架:应用上架,提供给用户浏览和下载。
(6)联通开放能力:联通为应用开发者提供开放能力支持,包括计费能力接入、广告接入、流量能力接入、账户能力接入。
(7)费用结算:周期性地面向开发者结算应用费用。

3 终端应用管理机制

终端应用管理是应用安全的屏障。终端应用管理通过终端对应用的签名检查、功能权限检查、应用调用能力管理等细分机制,提高应用使用的安全性。

3.1 应用签名检查

在应用商店发布的应用大多都经过应用商店和开发者的签名以确保应用来源的安全性,终端的应用安装管理器会查询应用的签名以验证应用的合法性。
Android系统虽未对签名证书的来源进行严格的限定,但默认也会对应用来源进行检查。但实际使用中,相当多的Android用户会打开未知来源应用安装许可选项以安装其他来源的应用,在应用安装便利的同时破坏了系统的应用签名检查措施,为移动终端带来了安全风险。

3.2 应用权限申请

Android涉及的权限大致分为3类:
手机所有者权限,即Android手机用户不需要输入任何密码,就具有安装一般应用软件、使用应用程序等的权限;
ROOT权限,Android系统的最高权限,可以对系统中所有文件、数据进行任意操作;
Android应用程序权限,Android应用程序对Android系统资源的访问需要的相应访问权限,该权限在应用程序设计时设定,在Android系统中初次安装时生效。
Android定义了百余种permission,可供开发人员使用。
Android应用程序权限在应用APK(Android Package, Android,安装包)中的AndroidMainifest.xml文件进行说明。该文件罗列了应用程序运行时库、运行依赖关系、所需的系统访问权限等。程序员在进行应用软件开发时,需要通过设置该文件的uses-permission字段来显式地向Android系统申请访问权限。
Android系统对应用程序授权申请的处理流程如下:
1)进入处理应用程序授权申请的入口函数。
2)系统从被安装应用程序的AndroidManifest.xml文件中获取该应用正常运行需申请的权限列表。
3)显示对话框,请求用户确认是否同意这些权限需求。
4)若同意,则应用程序正常安装,并被赋予相应的权限;若不同意,则应用程序不被安装。系统仅提供给用户选择“安装”或者“取消”的权利,没有选择其中某些权限进行授权的权利。
Android Q 上对权限的使用要求更高!!!

3.3 应用调用能力管理

中国通信标准化协会组织制定了《移动智能终端安全能力技术要求》行业标准,标准中提到的移动智能终端安全能力,包括终端硬件安全能力、终端操作系统安全能力、终端外围接口安全能力、终端应用层安全要求、终端用户数据保护安全能力等。

4 可信应用和可信应用商店

可信应用商店,顾名思义即为手机用户提供经认证的安全可靠、种类丰富的App手机应用。
可信应用商店通过建立实名认证机制,完善安全检测技术,为用户提供安全下载,为运营开发者提供应用维护平台,为主管部门提供可溯源的应用备案,为建立规范有序的移动应用市场而努力。

移动智能终端之应用商店和应用的安全管理机制(笔记四)相关推荐

  1. Vue3商店后台管理系统设计文稿篇(四)

    记录使用vscode构建Vue3商店后台管理系统,这是第四篇,主要记录使用git与vscode将代码同步提交到GitHub上面:将与Git操作相关命令进行详细介绍,完整记录Git与Github交互的所 ...

  2. 2021年中国成人商店市场趋势报告、技术动态创新及2027年市场预测

    成人商店市场的企业竞争态势 该报告涉及的主要国际市场参与者有Church & Dwight.Doc Johnson.LELO.Pleasure Chest.Reckitt Benckiser. ...

  3. uos应用_统信 UOS 私有化应用商店解决方案发布,支持应用分发管理

    IT之家9月28日消息 统信软件官方宣布,近日,统信私有化应用商店解决方案正式上线统信软件官网(点此访问). IT之家获悉,私有化应用商店服务采用 B/S 架构的商店后台和 C/S 架构的商店客户端, ...

  4. 移动智能终端安全技术要求及测试评价方法

    声明 本文是学习移动智能终端安全技术要求及测试评价方法. 下载地址 http://github5.com/view/627而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 移动智能 ...

  5. 如何免费开通微信小商店?

    微信官方正在推出一款免费的商城小程序:微信小商店,有营业执照的商家可以免费申请.本文将通过视频和图文讲解怎么免费申请开通微信小商店小程序,希望可以帮到您.由于截止到发稿前,微信小商店还在内测阶段,需要 ...

  6. Google年度安全报告显示第三方应用商店安全状况不容乐观

    为了让 Android 用户更加充分的了解 Android 系统的情况,Google 自前年开始展开 Android 应用程序的安全调查.Google 在去年发布了第一份 Android 系统安全报告 ...

  7. 120941138报:工信部正搭建移动应用认证和管理服务

    "工信部正在搭建移动应用软件认证和管理服务,以加强对智能终端的安全管理."工信部相关负责人昨日对<第一财经日报>表示,目前为了解决智能终端的安全问题,内部确实已经明确了 ...

  8. 互联网行业“十二五”发展规划

    中国的经济发展离不开政治大环境,政治气候的变化会对商业影响很大,通过了解解读政治上的一些规划布局往往能够降低风险. 互联网行业"十二五"发展规划 去这里下载源文件:http://w ...

  9. unity游戏框架学习-框架结构

    转眼毕业三年了,算上实习差不多四年的游戏开发了,一直想自己鼓捣套框架,奈何能力太次,不知道从哪开始.但是万事开头难,总要踏出第一步,才会有后面的两步,三步- 我认为的unity游戏框架就是一整套的工具 ...

  10. ASP.NET MVC5微信公众平台整合开发实战教程

    <ASP.NET MVC5&微信公众平台整合开发实战(响应式布局.JQuery Mobile,Windows Azure.微信核心开发)> 课程讲师:57Code 课程分类:ASP ...

最新文章

  1. c++语言static作用,详解c++中的 static 关键字及作用
  2. mht to html
  3. (建议收藏)产品经理要懂的SaaS知识,一文打包给你
  4. ThreadLocal_OSIV模式_FIlter_Web ajax
  5. Linux 查看显存带宽,Vega 20规格与Vega 10相近,显存带宽翻倍,但目前只能跑Linux - 超能网 - IT帮...
  6. python带参数的装饰器_Python-----带参数的装饰器以及补充
  7. plsql视图添加表字段_教你不到两分钟,快速创建数据透视图
  8. 换肤的css,换肤功能,css文件中准备三套颜色
  9. android 拦截webview加载url_android webview拦截post的请求
  10. gradle下载慢的问题
  11. 【推荐】样本/数据一致性检验的方法
  12. xbox手柄映射_如何在Windows 10中重新映射Xbox One控制器的按钮
  13. harmonyos蓝牙,鸿蒙OS 蓝牙概述
  14. 日计划安排 --- 凡事预则立,不预则废
  15. Java春招面试复习:JDK 5-15都有哪些经典新特性
  16. dell电脑如何安装ubuntu系统_Dell Win10系统安装成Ubuntu16.04
  17. 聊一聊ResNet系列(ResNet、ResNeXt)
  18. 关机的代码和电脑骚操作
  19. 岁月安好,不存在的!不过是有人替你负重前行
  20. Doxygen 安装使用

热门文章

  1. ecu可以用计算机控制吗,ECU应该怎么调?买来的电脑里的默认ECU程序能用么?
  2. Python - 使用ffmepg批量转换某个文件夹以及所有子文件夹下所有的视频,修改其帧率/码率/分辨率到另一文件夹,并保留原有文件夹结构
  3. cpp设计并实现大整数
  4. Qt开发 — WindowType详解
  5. Adobe PhotoShop V8.0
  6. android手机短信诈骗原理,安卓系统均存短信欺诈漏洞 专家:系统先天不足
  7. jQuery cdn加速
  8. 淮安市第八届计算机比赛,淮安市科学技术协会
  9. java 获取视频第一帧 | Java工具类
  10. java blockingqueue_Java BlockingQueue take()用法及代码示例