嵌入式软件测试笔记10 | 嵌入式软件测试中如何进行安全性分析?

10 | 嵌入式软件测试中如何进行安全性分析?

  • 1 简介
  • 2 故障模型及后果分析(FMEA)
    • 2.1 三个步骤
    • 2.2 带来的结果优势
    • 2.3 FMEA分析过程
      • 2.3.1 描述系统及其功能
      • 2.3.2 识别潜在的故障模式
      • 2.3.3 故障模式对功能的影响
      • 2.3.4 风险导致后果的原因
      • 2.3.5 风险监控
  • 3 故障树分析(FTA)
    • 3.1 简介
    • 3.2 常用建立故障树的符号
    • 3.3 FTA实例
  • 4 安全性分析生命周期
    • 4.1 基于MOD-00-56的安全性生命周期
    • 4.2 测试基础
    • 4.3 测试活动

1 简介

  • 这里的安全指在一定条件下,系统不会危及到人的生命的期望;
  • 某些系统的故障可能导致严重的后果,如人员死亡、严重伤害、或环境环境收到严重破坏
  • 书中说到了两种方法:FMEA(故障模型及后果分析)FTA(故障树分析)
  • 故障原因:

① 硬件或软件故障;
② 硬件磨损;
③ 电磁干扰,机械、化学干扰;

  • 故障模式:描述产品或过程无法执行所期望的功能的一种方法;
  • 故障:系统或部件不能实现其运行需求;
  • 后果:由故障模式导致的不利结果。

2 故障模型及后果分析(FMEA)

2.1 三个步骤

  • 标识潜在的故障模式;
  • 确定这些潜在的故障模式对系统功能的影响;
  • 制定行动来减少影响/故障模式。

2.2 带来的结果优势

  • 大幅度提高系统的安全性;
  • 在这整个开发生命周期过程中能够跟踪风险;
  • 及早确定潜在的安全风险;
  • 将风险及为减少风险而采取的行动文档化;
  • 将后期系统的改动和相关费用减到最少;
  • 测试策略有高度可靠的输入。

2.3 FMEA分析过程

2.3.1 描述系统及其功能

  • 描述系统及其功能;
  • 包括设计及其需求文档;
  • 描述系统不同部分之间关系的文档。

2.3.2 识别潜在的故障模式

两种类型的软件故障模式:

  • 数据故障模式:

① 数据丢失;
② 数据不正确;
③ 数据有时限;
④ 额外数据。

  • 事件故障模式:

① 停机或异常终止;
② 忽略事件;
③ 错误逻辑;
④ 时间/顺序。

2.3.3 故障模式对功能的影响

  • 多每一个功能,需描述潜在的故障模式对其产生的影响;
  • 先描述对功能的影响,再描述对系统的影响,最后根据风险将后果进行分类。

2.3.4 风险导致后果的原因

  • 对原因需要描述措施。

2.3.5 风险监控

  • 开发过程中,对所识别的风险进行监控。

3 故障树分析(FTA)

3.1 简介

  • FTA被用来确定故障的原因;
  • 系统的故障放在故障树的顶端,其次是考虑系统的哪些不必要的行为是造成故障的原因;
  • 这里的故障是指错误事件,错误数据,意外数据或行为。

3.2 常用建立故障树的符号

在这里插入图片描述

3.3 FTA实例

  • 以下为起搏器故障分析的子集:
    在这里插入图片描述

4 安全性分析生命周期

4.1 基于MOD-00-56的安全性生命周期

在这里插入图片描述

  • 安全需求:

① 是用于安全验证的测试基础的一部分;
② 是安全过程的第一个活动。

  • 安全项目程序:对时间、费用和资源进行预算的项目方案;
  • 灾害识别:

① 目标是确定系统哪些部分出现故障,将会导致系统工作出现严重后果;
② 常用技术FMEA和FTA。

  • 风险评估:对已识别的灾害,分析他们对系统的影响是什么,其后果是什么;
  • 安全性评估:目标是确定是否采取了所有必要的措施;
  • 安全验证:根据安全要求,测试系统是否正常运行。

4.2 测试基础

  • 以下为最终设计的实现以及与测试和安全过程的关系:
    在这里插入图片描述

4.3 测试活动

  • 以下为集中进行影响分析并采取矫正措施:
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/19122.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django基础入门⑮:更新书籍信息 删除书籍条目信息 Django静态文件配置

Django基础入门⑮:更新书籍信息 删除书籍条目信息 Django静态文件配置 更新书籍信息删除书籍条目信息Django静态文件配置 🏘️🏘️个人简介:以山河作礼。 🎖️🎖️:Python领域新星创作者,CSDN实力新星认证&…

Spring源码系列-第2章-后置工厂处理器和Bean生命周期

第2章-后置工厂处理器和Bean生命周期 后置工厂处理器属于后置处理器,后置处理器是Spring最核心的部分,Spring几乎所有的附加功能全由它完成。 什么是BeanPostProcessor? public interface BeanPostProcessor {/*** Apply this {code BeanPos…

分布式监控系统之zabbix6.0二

分布式监控系统之zabbix6.0二 一、部署 zabbix 代理服务器二、部署 Zabbix 高可用集群三、Zabbix 监控 Windows 系统四、Zabbix 监控 java 应用五、Zabbix 监控 SNMP 一、部署 zabbix 代理服务器 分布式监控的作用: 分担 server 的集中式压力解决多机房之间的网络…

跨站脚本攻击XSS

​​​​​​1、漏洞原理及防御 XSS又叫CSS (CrossSiteScript),因为与层叠样式表(css)重名,所以叫Xss,中文名叫跨站脚本攻击。 xss攻击,主要就是攻击者通过“html注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页时&#…

火爆全网,自动化测试-Allure完美测试报告(详全)卷起来...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、allure简介 A…

java.lang.UnsatisfiedLinkError: Could not load SWT library.

java.lang.UnsatisfiedLinkError: Could not load SWT library. https://download.eclipse.org/windowbuilder/lastgoodbuild

【停用词】NLP中的停用词怎么获取?我整理了6种方法

文章目录 一、停用词介绍二、停用词应用场景2.1 提取高频词2.2 词云图 三、停用词获取方法3.1 自定义停用词3.2 用wordcloud调取停用词3.3 用nltk调取停用词3.3.1 nltk中文停用词3.3.2 nltk英文停用词 3.4 用sklearn调取停用词3.5 用gensim调取停用词3.6 用spacy调取停用词 一、…

亚马逊云科技为企业提供一站式的出海策略,为企业保驾护航

走出国门,寻找新的盈利空间、优化资源配置、实现创新突破,已经成为中国企业的战略共识。如何进行全球化布局、本地化运营,实现高质量出海,是出海企业共同面临的课题。在【潮向新世界】出海日活动上,亚马逊云科技分享了…

热爱python的第一天:初识python,搭建python环境,运行第一个python小程序

目录 1 初始python python 概述 python的应用领域 应用python的公司 2 搭建python 开发环境 2.1 安装python(以windows 系统为例)(1)下载安装包 (2) 下载保存后打开文件夹点击以管理员身份运行 &…

apt-get install命令

在Linux系统中,apt-get命令默认安装包的位置是在/usr目录下。具体来说,安装的可执行文件会存储在/usr/bin目录下,而库文件会存储在/usr/lib目录下。同时,相应的配置文件和文档等也会存储在/usr/share目录下。 举例,ap…

Rdkit|化学指纹(fingerprint)

github:地址 文章目录 Rdkit|化学指纹(fingerprint)化学指纹(fingerprint)RDKFingerprintMorgan指纹提供的指纹信息存储在字典中 MACCS指纹AtomPair指纹TopologicalTorsion指纹参考 Rdkit|化学指纹(fingerprint&#x…

IDEA中使用.env文件配置信息

一、说明 我们以配置阿里云的 Access Key 的信息为例(配置别的信息当然也可以,我只是举个例子!!!),假设我们的代码中需要用到它。Access Key有两个属性,分别为【ALIBABA_CLOUD_ACCE…