HarmonyOS Developer使用指南-安全测试

丶龙八夷
发布于 2023-4-4 14:25
浏览
0收藏

1 范围

1.1 背景及目的

本标准旨在提升应用的用户安全体验,规范应用对用户权限、隐私数据的申请、处理、维护,提高应用的安全防护能力,避免用户的利益受到损害。

本标准规定了HarmonyOS应用安全隐私质量要求,本标准适用于HarmonyOS应用软件的设计、开发及测试。

1.2 适用范围/测试范围

本标准适用于HarmonyOS应用的安全设计、开发与测试。

2 规范性引用文件

下列文件对于本文件的应用是必不可少的。

​《常见类型移动互联网应用必要个人信息范围规定》​

​《移动智能终端应用软件行为规范》​

3 术语、定义和缩略语

3.1 术语、定义

3.1.1 Intent

Intent主要是解决应用的各项组件之间的通讯。Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,应用则根据此intent的描述,负责找到对应的组件,将 intent传递给被调用的组件,并完成组件的调用。

3.1.2 信任边界

位于信任边界之内的所有组件都是被系统本身直接控制的。所有来自不受控的外部系统的连接与数据,包括其他应用、服务端与外部系统,都应该被认为是不可信的,要先在边界处对其校验,才能允许它们进一步与本系统交互。

3.1.3 个人数据

与一个身份已被识别或者身份可被识别的自然人(“数据主体”)相关的任何信息。身份可识别的自然人是指其身份可以通过诸如姓名、身份证号、位置数据等识别码或者通过一个或多个与自然人的身体、生理、精神、经济、文化或者社会身份相关的特定因素来直接或者间接地被识别。

个人数据包括但不限于:自然人的email地址、电话号码、生物特征(指纹)、位置数据、IP地址、医疗信息、宗教信仰、社保号、婚姻状态等。

3.1.4 敏感个人数据

敏感个人数据是个人数据的一个重要子集,指的是涉及数据主体的最私密领域的信息或者一旦泄露可能会给数据主体造成重大不利影响的数据。欧盟等国家和地区法律定义的敏感个人数据包括种族、政治观点、宗教和哲学信仰、工会成员资格、基因数据、生物信息、健康和性生活状况、性取向等。根据业界最佳实践,敏感个人数据还包括可与自然人身份相关联的银行卡号、身份证号、护照号、口令等。敏感个人数据的处理需要更多更严格的保护措施。

3.1.5 应用权限

由于系统通过沙箱机制管理各个应用,默认情况下,应用只能访问有限的系统资源。但应用为了扩展功能的需要,需要访问沙箱外的系统或其他应用的数据或能力,系统或应用也必须以明确的方式共享数据或能力。为了保证这些数据或能力不被不当或恶意使用,就需要有一种访问控制机制来保护,这就是权限。

权限是程序操作某种对象的许可。在应用层面,使用显式定义且经用户授权的权限控制机制,系统化地规范并强制各类应用的行为准则与权限许可。

3.2 缩略语

缩略语

中文全称

英文全称

IMEI

国际移动设备识别码

International Mobile Equipment Identity

MAC

媒体存取控制

Media Access Control

SDK

软件开发工具包

Software Development Kit

USB

通用串行总线

Universal Serial Bus

4 测试环境准备

4.1 通用测试方法

应用安全测试采用自动化工具+人工的方式进行,对应用进行设备端动态分析和后台服务器静态分析,确保及时检测应用存在的安全隐私风险,保障测试内容全覆盖。

动态分析通过执行应用的安装、运行、退出、重启、执行自动化脚本等操作,借助工具记录测试对象的行为,如隐私政策通知、权限申请、高危命令执行、敏感行为操作等。通过对实际行为的分析,检测应用是否存在隐私合规类问题。

4.2 测试工具

部分测试方法需要工具的支撑,您可能会使用到网络流量捕获/解析工具、病毒木马扫描工具、Hook工具和隐私数据检测工具等,请结合业务需要自行选择对应工具。

5 安全测试标准

本章描述针对应用的各种安全要求进行评测的方法。评测结果有以下两种:

1)未见异常:通过评测方法没有发现存在安全风险或安全事件;

2)不符合要求:直接发现安全事件或不符合安全能力要求。

5.1 应用安全测试

5.1.1 病毒木马检查

标准编号

5.1.1.1

病毒木马检查

标准描述

应用不得含有病毒木马等侵害用户的功能(包括代码等可疑行为)

预置条件

1、被测应用处于正常工作状态;

2、病毒木马扫描工具处于正常工作状态。

测试用例

步骤1:使病毒木马扫描工具处于正常工作状态,保持病毒库为最新版本;

步骤2:使用病毒木马扫描工具对被测应用进行病毒、木马、后门检测。

判定标准

在步骤2后,如果病毒木马扫描工具显示被测应用无病毒木马,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

检测结果依赖使用的病毒木马扫描工具

5.1.2 消耗用户流量检查

标准编号

5.1.2.1

消耗用户流量检查

标准描述

应用不得在未告知用户的情况下,超出业务需要,频繁自动联网,消耗用户流量

预置条件

1、被测应用处于正常工作状态;

2、网络流量拦截工具处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:启动网络流量拦截工具,对被测应用的流量进行拦截;

步骤3:对应用进行核心和基本功能遍历;

步骤4:切换应用到后台,放置5分钟,在其间进行灭屏亮屏、休眠唤醒、网络断开再连接等操作,查看网络流量拦截工具是否可以检测到流量行为;

步骤5:查看隐私声明是否有自动联网的目的描述。

判定标准

在步骤4后,如果待测应用在后台没有自动联网行为,则该项目评测结果为“未见异常”,否则继续步骤5;

在步骤5后,如果隐私声明中有自动联网的目的描述,且满足业务需要,则该项目评测结果为“未见异常”;否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

检测方法需要使用网络流量捕获/解析工具

5.1.3 反卸载检查


标准编号

5.1.3.1

反卸载检查

标准描述

应用中不能包含反卸载操作

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:使用系统提供的机制卸载待测应用,查看是否卸载成功。

判定标准

在步骤1后,如果应用被成功卸载,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.4 引导用户开启开发者选项检查

标准编号

5.1.4.1

引导用户开启开发者选项检查

标准描述

应用不能引导用户开启开发者选项,禁止引导用户开启USB调试模式

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:从顶层界面开始遍历应用功能;

步骤3:查看页面内容是否存在引导用户开启开发者选项和开启USB调试模式的描述,例如引导用户到系统设置界面连续敲击版本号、引导用户打开“仅充电”模式下允许ADB调试等。

判定标准

在步骤3后,如果应用没有引导用户开启开发者选项的描述,且没有引导用户开启USB调试模式,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.5 执行有损系统和应用安全操作检查

标准编号

5.1.5.1

执行有损系统和应用安全操作检查

标准描述

应用不能诱导、欺骗用户,在用户主观不知操作后果情况下,执行有损系统和应用安全的操作,包括但不限于下载或安装系统root工具、激活设备管理器选项、开启辅助功能等

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:从顶层界面开始遍历应用功能;

步骤3:检查页面内容,是否有引导用户下载或安装系统root工具、激活设备管理器选项、开启辅助功能。

判定标准

在步骤3后,如果没有发现应用存在诱导、欺骗用户下载或安装系统root工具、激活设备管理器选项、开启辅助功能等行为,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.6 自启动检查

标准编号

5.1.6.1

自启动检查

标准描述

应用在用户未授权情况下,且无合理场景,不能执行自启动操作

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:重启移动智能终端,在移动智能终端进入正常工作状态后,检查应用进程是否已启动。

判定标准

在步骤1后,如果应用没有自启动,则该项目评测结果为“未见异常”;

在步骤2后,如果应用没有自启动,该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.7 关联启动应用检查

标准编号

5.1.7.1

关联启动应用检查

标准描述

应用在用户未授权情况下,且无合理场景,不能执行关联启动操作

预置条件

1、被测应用处于正常工作状态

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能,查看是否有关联启动跟本身业务无关的其他应用,例如视频类应用启动导航类应用;

步骤3:如果有关联启动其他应用,查看是否有提醒用户授权。

判定标准

在步骤2后,如果应用没有关联启动其他应用,则该项目评测结果为“未见异常”,否则继续步骤3;

在步骤3后,如果关联启动有提醒用户授权,则用户拒绝后不再关联启动其他应用,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.8 劫持系统操作检查

标准编号

5.1.8.1

劫持系统操作检查

标准描述

应用禁止劫持系统操作,避免导致系统功能异常

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:触发返回键,检查应用是否能跳转上一界面,是否禁止用户返回。

判定标准

在步骤2后,如果应用允许跳转到上一界面,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.9 欺骗误导用户下载应用检查

标准编号

5.1.9.1

欺骗误导用户下载应用检查

标准描述

应用不得欺骗误导用户下载APP,包括但不限于无下载提示点击广告页面自动下载APP、点击下载按钮以外区域自动下载APP等

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能,查看是否存在无下载提示点击广告页面自动下载APP、点击下载按钮以外区域自动下载APP的行为。

判定标准

在步骤2后,如果应用没有下载APP,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.10 弹窗页跳过检查

标准编号

5.1.10.1

弹窗页跳过检查

标准描述

应用禁止在启动弹窗信息页面未提供显著、有效的关闭或跳过功能,或利用文字、图片、视频等方式跳转至其他页面

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:查看启动页是否存在广告且界面是否存在显著跳过方式;

步骤3:点击屏幕空白位置,检查是否会跳转到其他页面。

判定标准

在步骤2后,如果应用不存在广告,或者存在显著跳过方式,继续步骤3;

在步骤3后,如果点击屏幕空白位置不会跳转至其他页面,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.1.11 提供恶意软件链接检查

标准编号

5.1.11.1

提供恶意软件链接检查

标准描述

禁止为安装恶意软件提供链接或引导

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:从顶层界面开始遍历应用功能;

步骤3:查看是否为安装恶意软件提供链接或指导。

判定标准

在步骤3后,如果应用没有为安装恶意软件提供链接或指导,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2 隐私合规测试

5.2.1 提供隐私声明检查

标准编号

5.2.1.1

提供隐私声明检查

标准描述

开发者必须在应用内部提供自身的可便捷查看的隐私政策链接。隐私政策内容需公开透明,且需和应用在运行中对用户个人数据的处理保持一致。开发者必须确保该链接始终能正常打开

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:如果被测应用存在收集个人数据的行为,检查其是否具备隐私声明。

判定标准

在步骤3后,如果应用具备相应的隐私声明,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.2 隐私声明收集数据目的范围检查

标准编号

5.2.2.1

隐私声明收集数据目的范围检查

标准描述

应用的隐私政策链接指向的隐私政策应当包含应用程序(包括委托的第三方或嵌入的第三方代码、插件)收集和使用个人数据的目的、方式和范围。个人数据包括IMEI、IMSI、设备MAC地址、软件安装列表、位置、联系人、通话记录、日历、短信、本机电话号码、图片、音视频等个人信息

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:查看隐私政策描述,检查是否包含应用收集和使用个人数据的目的、方式和范围。

判定标准

在步骤2后,如果隐私政策中包含应用收集和使用个人数据的目的、方式、范围及其他个人数据处理相关的内容,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.3 隐私声明收集数据种类期限检查

标准编号

5.2.3.1

隐私声明收集数据种类期限检查

标准描述

应用的隐私政策链接指向的隐私政策应当包含应用程序(包括委托的第三方或嵌入的第三方代码、插件)处理个人数据的信息种类、保存期限

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:查看隐私政策描述,检查是否包含应用收集和使用个人数据的种类和期限。

判定标准

在步骤2后,如果隐私政策中包含应用收集和使用个人数据的种类和期限,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.4 用户同意检查

标准编号

5.2.4.1

用户同意检查

标准描述

应用访问、收集、使用或披露任何个人数据,需经用户的同意或满足其他法定情形

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:如果被测应用存在处理个人数据的行为,检查隐私声明中是否有对应描述;

步骤4:拒绝隐私声明或不存在其他法定情形,查看应用是否仍然访问、收集、使用个人数据。

判定标准

在步骤3后,如果隐私声明中没有相应个人数据的描述,则该项目评测结果为“不符合要求”,否则继续步骤4;

在步骤4后,如果应用不再访问、收集、使用个人数据,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.5 清晰明确获取用户同意检查

标准编号

5.2.5.1

清晰明确获取用户同意检查

标准描述

应用必须以清楚明确的方式呈现隐私政策并获取用户同意

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:检查应用同意隐私政策的界面,是否提供“同意”、"拒绝"两种类型选项的按钮;

步骤2:检查同意类型按钮上文字描述是否是“好的”、"我知道了”等无法清晰表达用户同意的词语。

判定标准

在步骤1后,如果应用提供“同意”和“拒绝”两种类型的按钮,则该项目评测结果为“未见异常”,否则继续步骤2;

在步骤2后,如果应用使用“好的”、“我知道了”等无法清晰表达用户同意的词语,则该项目评测结果为“不符合要求”,否则,该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.2.6 撤销同意检查

标准编号

5.2.6.1

撤销同意检查

标准描述

应用必须为用户提供简单易懂且易于操作的方式来撤销同意

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:查看隐私声明中是否有撤销同意的方式描述;

步骤2:按照撤销同意的方式描述进行操作,检查需要点击的次数;

步骤3:查看应用是否停止收集个人数据。

判定标准

在步骤1后,如果应用没有撤销同意的方式描述,则该项目评测结果为“不满足要求”,否则继续步骤2;

在步骤2后,如果撤销同意的方式描述与实际执行步骤不符,或者用户需要点击4次以上,则该项目评测结果为“不满足要求”,否则继续步骤3;

在步骤3后,如果应用停止收集个人数据,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.7 超范围收集数据检查

标准编号

5.2.7.1

超范围收集数据检查

标准描述

应用不得超出服务所必需或无合理应用场景收集和使用个人数据,包括静默状态下或在后台运行

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:使用行为监控工具监控应用行为,在用户同意隐私政策前,检查应用是否收集用户数据;

判定标准

在步骤2后,如果应用未收集用户数据,,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.8 敏感个人数据明示同意检查

标准编号

5.2.8.1

敏感个人数据明示同意检查

标准描述

收集敏感个人数据前,需单独获得用户的明示同意

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:如果被测应用存在收集个人敏感数据的行为,检查其是否单独获得用户的明示同意。

判定标准

在步骤3后,如果应用获取个人敏感数据之前,单独弹窗获得用户的明示同意,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.9 未经同意以特定频率收集个人数据检查

标准编号

5.2.9.1

未经同意以特定频率收集个人数据检查

标准描述

应用未向用户明示收集个人信息的频率,未经用户同意,不应以特定频率收集个人信息

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:在同意隐私声明前,检查被测应用是否存在以特定频率收集用户个人数据的行为。

判定标准

在步骤3后,如果应用未以特定频率收集用户个人数据,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.10 收集个人数据频率检查

标准编号

5.2.10.1

收集个人数据频率检查

标准描述

应用收集个人信息的频率不应超出其实现产品或服务的业务功能所必需的最低频率

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:如果被测应用存在处理个人数据的行为,记录收集个人数据的频率,检查是否超出隐私声明中对于收集数据频率的描述。

判定标准

在步骤3后,隐私声明中收集数据的与实际收集频率一致,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.2.11 诱导收集个人生物特征检查

标准编号

5.2.11.1

诱导收集个人生物特征检查

标准描述

应用不得欺骗误导用户提供个人信息,包括但不限于通过积分、奖励、优惠等方式欺骗误导用户提供身份证号码以及个人生物特征信息的行为

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能;

步骤3:检查被测应用是否存在欺骗误导用户提供身份证号码以及个人生物特征信息的行为。

判定标准

在步骤3后,被测应用不存在欺骗误导用户提供身份证号码以及个人生物特征信息的行为,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.3 权限安全测试

5.3.1 受限权限申请检查

标准编号

5.3.1.1

受限权限申请检查

标准描述

受限开放权限采用权限证书的方式对外开放,无正当理由的应用禁止申请此类权限,使用受限开放权限前,必须提前到应用市场申请

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:开发者自检,查看申请的权限列表,是否包含如下权限:

ohos.permission.READ_CONTACTS

ohos.permission.WRITE_CONTACTS

步骤2:如果有且为功能需要,提前到应用市场申请。

判定标准

在步骤1后,如果没有申请受限权限,则该项目评测结果为“未见异常”,否则继续步骤2;

在步骤2后,如果已经去应用市场申请,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.3.2 权限申请最小化原则检查

标准编号

5.3.2.1

权限申请最小化原则检查

标准描述

应用权限申请遵循最小化原则,只申请业务功能所必要的权限,禁止申请不必要的权限

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:开发者自检,查看应用的权限申请列表是否超出业务功能需要。

判定标准

在步骤1后,如果应用软件申请的权限没有对应的业务功能,例如:没有发送短信相关的功能,但是申请了发送短信的权限则该项目评测结果为“不符合要求”,否则,该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.3.3 拒绝权限弹窗检查

标准编号

5.3.3.1

拒绝权限弹窗检查

标准描述

应用运行时,在用户明确拒绝通讯录、定位、短信、录音、相机、日历等权限申请后,不应向用户频繁弹窗申请与当前服务场景无关的权限;拒绝权限后再次运行应用,也不应向用户频繁弹窗申请开启与当前服务场景无关的权限

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能,遇到权限弹窗时拒绝权限;

步骤3:查看拒绝权限后,再次触发此功能,应用是否继续弹窗。

判定标准

在步骤3后,如果拒绝权限后,应用权限弹窗循环超过2次,则该项目评测结果为“不符合要求”,否则,该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.3.4 拒绝权限弹窗应用退出检查

标准编号

5.3.4.1

拒绝权限弹窗应用退出检查

标准描述

应用运行时,用户拒绝授权电话、通讯录、定位、短信、录音、相机、存储、日历等权限,应用不应退出或关闭或者循环弹窗

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:依次遍历应用所有页面,执行所有功能,遇到权限弹窗时拒绝权限;

判定标准

在步骤2后,如果拒绝权限后,应用退出,则该项目评测结果为“不符合要求”,否则,该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.3.5 提前申请权限检查

标准编号

5.3.5.1

提前申请权限检查

标准描述

应用首次打开或运行中,未见使用权限对应的相关功能或服务时,不应提前向用户弹窗申请开启通讯录、定位、短信、录音、相机、日历等权限。

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装应用并运行;

步骤2:在隐私声明同意前,查看是否有权限弹窗申请权限;

判定标准

在步骤2后,如果存在权限弹窗,则该项目评测结果为“不符合要求”,否则,该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.3.6 自定义权限命名检查

标准编号

5.3.6.1

自定义权限命名检查

标准描述

禁止应用自定义权限名以ohos开头,要求以应用包名或公司反域名为前缀,防止跟系统或其他应用定义的权限重名

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:开发者自检,查看应用的自定义权限是否以ohos开头;

步骤2:开发者自检,查看自定义权限名称是否超过256字符;

步骤3:开发者自检,查看自定义权限授予方式是否为user_grant;

步骤4:开发者自检,查看自定义权限开放范围是否为restricted。

判定标准

在步骤1后,如果应用自定义权限以ohos开头,则该项目评测结果为“不符合要求”,否则继续步骤2;

在步骤2后,如果应用自定义权限超过256字符,则该项目评测结果为“不符合要求”,否则继续步骤3;

在步骤3后,如果应用自定义权限授予方式为user_grant,则该项目评测结果为“不符合要求”,否则继续步骤4;

在步骤4后,如果应用自定义权限开放范围为restricted,则该项目评测结果为“不符合要求”,否则该项目评测结果为“未见异常”。

需考虑的特殊事项

  

5.3.7 注册登录权限检查

标准编号

5.3.7.1

注册登录权限检查

标准描述

用户拒绝授予电话、通讯录、定位、短信、录音、相机、存储、日历等权限时,应用不应无法正常注册或登录

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:触发应用注册或登录功能,查看是否弹出申请电话、通讯录、定位、短信、录音、相机、存储或日历等权限;

步骤3:拒绝授予权限,查看应用是否可以正常注册或登录。

判定标准

在步骤2后,如果应用没有申请电话、通讯录、定位、短信、录音、相机、存储或日历等权限,则该项目评测结果为“未见异常”,否则继续步骤3;

在步骤3后,如果应用可以正常注册或登录,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.3.8 广告投放申请位置权限检查

标准编号

5.3.8.1

广告投放申请位置权限检查

标准描述

应用不得仅出于广告投放或数据分析的目的而请求位置权限

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:查看应用是否请求位置权限;

步骤2:开发者自检,明确申请位置权限的目的,查看是否出于广告投放或数据分析的目的。

判定标准

在步骤1后,如果没有申请位置权限,则该项目评测结果为“未见异常”,否则继续步骤2;

在步骤2后,如果应用申请位置权限出于正常功能需要,非出于广告投放或数据分析目的,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

5.4 跨设备访问安全测试

5.4.1 跨设备提供安全要求检查

标准编号

5.4.1.1

跨设备安全要求检查

标准描述

跨设备访问场景下,共享个人数据前需要用户同意;跨设备读取个人数据时状态栏需要有提示;禁止跨设备提供不可恢复的敏感功能

预置条件

1、被测应用处于正常工作状态。

测试用例

步骤1:安装并运行应用;

步骤2:遍历应用功能,查看应用是否提供跨设备功能;

步骤3:遍历应用功能,查看应用共享数据前,是否经过用户同意;

步骤4:遍历应用功能,查看应用跨设备读取数据时,状态栏是否有提示。

步骤5:遍历应用功能,查看应用是否提供不可恢复的敏感功能,例如远程删除个人数据。

判定标准

在步骤2后,如果应用不提供跨设备功能,则该项目评测结果为“未见异常”,否则继续步骤3;

在步骤3后,如果应用提供应用共享数据功能,且应用共享数据前未经过用户同意,则该项目评测结果为“不符合要求”,否则继续步骤4;

在步骤4后,如果应用提供跨设备读取数据功能,且状态栏有提示,则该项目评测结果为“不符合要求”,否则继续步骤5;

在步骤5后,如果应用不提供不可恢复的敏感功能,则该项目评测结果为“未见异常”,否则,该项目评测结果为“不符合要求”。

需考虑的特殊事项

  

6 修订记录

日期

修订内容

2021年7月

第一次发布

2022年6月

根据最新行业法规修订




文章转载自:​​https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/app-security-testing-0000001136113822-V3​

分类
标签
已于2023-4-4 14:25:29修改
收藏
回复
举报
回复
    相关推荐