0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

安全关键时代的遗留代码

星星科技指导员 来源:嵌入式计算设计 作者:BILL ST. CLAIR 2022-11-07 14:28 次阅读

当考虑安全和安全关键风险时,遗留代码重用的成本和便利性优势可能会降低或复杂化。如果遗留代码被证明在功能上正确且在操作上可行,则其接受是基于对预期会发生什么的假设。但是,通常会导致故障的是意外情况,而结构测试提供了一种缓解意外情况的方法。

今天,对遗留软件的“构建”接受正在受到更多的审查。这是由于在军事和商业系统中,越来越强调安保和安全评价标准。关于认证的软件方面,必须提供可重复验证过程的证据和支持该过程的分析。结构测试是验证此证据的一种机制。

虽然曾经被视为不必要的成本负担,但严格的、基于标准的开发和验证过程是全球嵌入式系统行业安全重要性的新兴全球视角的结果。这种观点的定义是与商业航空旅行、医疗设备产品部署、全球汽车产品开发标准化以及国防和安全等各种活动相关的风险。在这些应用程序中,与意外软件和系统行为相关的责任、成本和任务影响被认为是不可接受的。

作为美国联邦航空局国际飞行软件工作组的成员,该工作组正在制定下一版DO-178软件标准,我目睹了人们越来越意识到在飞行软件系统中使用遗留软件。工作组努力确保遗留代码得到适当的管理和验证,并且它实际上不会成为“死”或无法访问的代码,在这种代码中,它可能无意中被调用用于运行时执行,而无需事先进行适当的测试。从历史上看,死代码被视为意外软件行为的原因,并对飞行安全构成重大风险。

随着嵌入式系统中面向对象应用程序的出现,使用C++JavaAda 2005等语言,工作组还意识到重用遗留代码的可能性呈指数级增长。旧组件可以与新组件共享成员函数,并且在运行时执行之前,这些共享函数的精确行为实际上不可见。在面向对象的系统中,意外发生的可能性更高。

美国军方也认识到与意外软件行为相关的风险,特别是在安全漏洞的背景下。空军研究实验室与国家安全局、国防部主要承包商、学术界和软件供应商合作,正在管理一个多独立级别的安全/安全(MILS)计划,将DO-178B与安全标准相结合。这包括共同标准和中央情报局局长指令6/3,保护信息系统中的敏感隔离信息。虽然MILS计划不直接解决遗留代码,但其许多目标正在应用于包含遗留软件的新项目和部署。MILS 程序的软件开发和验证指南主要来自 DO-178B,现在给软件供应商和系统集成商带来了实施可重复验证流程和降低与意外软件行为相关的风险的巨大挑战。

鉴于与安全和安全关键型软件相关的挑战,我们需要确定有关遗留代码的最佳实践,并提出一种维护和更新遗留代码的方法。这些挑战可以通过结构测试来解决。结构测试(有时称为“软件测试软件”)提供了一个运行时环境,在该环境中,自动生成测试用例,以基于系统范围的路径级代码分析来执行软件行为。尽管过去结构测试因没有明确验证功能正确性而受到批评,但这种观点没有认识到结构测试的目标是练习整个软件结构,捕获异常并测量结果代码覆盖率 - 而不是显式测试软件功能。

除非正确分析遗留软件的“竣工”架构,否则无法预测更改的影响,也无法有效地应用更改。幸运的是,结构测试固有的静态分析也可以生成架构的图形表示,包括调用树图、控制流图、数据耦合表和设置/使用表。这些可视化对于处理来自多个来源的代码(如建模工具、手动代码和软件库)的工程师特别有用。结构测试静态分析维度的另一个副产品是将编码规则自动应用于源代码,确保旧代码和新代码之间的实现一致性。

测试技术的进步催生了新一代工具,而不仅仅是另一种工具。这些进步恰逢其时,以满足国际软件标准化、嵌入式软件市场的全球化以及安保和安全关键验证标准的日益重视的需求。现在,传统软件用户可以排除意外的软件行为,并帮助确保我们的安全。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2953

    浏览量

    104504
  • C++
    C++
    +关注

    关注

    21

    文章

    2104

    浏览量

    73462
  • 代码
    +关注

    关注

    30

    文章

    4732

    浏览量

    68274
收藏 人收藏

    评论

    相关推荐

    电梯报警显示终端:智能电梯时代如何重塑安全管理?

    在现代都市的摩天大楼中,电梯作为垂直交通的重要工具,其安全性直接关系到每一位乘客的生命财产安全。随着科技的进步,电梯报警显示终端作为电梯安全管理系统的重要组成部分,正逐步成为提升电梯运行安全
    的头像 发表于 09-10 11:08 291次阅读

    SDV三大关键应用的安全考虑因素

    鉴于未来人工智能 (AI) 赋能的软件定义汽车 (SDV) 将包含高达十亿行代码,加上显著提高的网联特性,汽车受攻击面也将持续扩大并不断演进。在之前的博文里我们曾讨论过,更大的受攻击面将对汽车网络安全
    的头像 发表于 09-05 15:45 1905次阅读

    RFID无线测温系统,守护电厂安全运行的关键力量

    RFID无线测温系统在电厂设备温度监测中起着关键作用。它可以实时监测设备温度,及时发现设备故障,保障电厂安全稳定运行。
    的头像 发表于 08-15 15:03 254次阅读
    RFID无线测温系统,守护电厂<b class='flag-5'>安全</b>运行的<b class='flag-5'>关键</b>力量

    安全服务加密存储代码怎么查

    安全服务加密存储代码的查询与实现是一个复杂的过程,涉及到多个方面,包括数据加密、密钥管理、访问控制等。 1. 引言 随着云计算的快速发展,越来越多的企业和个人将数据存储在云端。然而,数据安全问题也
    的头像 发表于 07-02 09:28 301次阅读

    安全主要考虑的关键技术有哪些

    安全是指在云计算环境中保护数据和应用免受攻击和威胁的一系列技术和策略。随着云计算的普及,云安全已经成为企业和个人用户关注的焦点。本文将详细介绍云安全关键技术,包括数据加密、身份认证
    的头像 发表于 07-02 09:27 507次阅读

    安全关键技术有哪些

    安全是确保云计算环境中数据和应用程序安全的一种技术。随着云计算的普及,云安全已成为企业和个人关注的焦点。本文将详细介绍云安全关键技术,包
    的头像 发表于 07-02 09:20 517次阅读

    该如何提高代码容错率、降低代码耦合度?

    提高RT-Thread代码的容错率和降低耦合度是确保代码质量和可维护性的关键,下面列举了几种在编写代码时,提高代码容错率和降低耦合度的思路。
    的头像 发表于 06-26 08:10 582次阅读
    该如何提高<b class='flag-5'>代码</b>容错率、降低<b class='flag-5'>代码</b>耦合度?

    工业安全与通信并进:大核桃防爆手机助力工业4.0时代安全发展!

    在数字化浪潮席卷全球的今天,工业4.0时代正以前所未有的速度推动着各行业的深刻变革。在这个充满创新与挑战的时代,工业安全与通信的并进显得尤为关键。大核桃防爆手机,作为工业
    的头像 发表于 06-21 16:18 262次阅读
    工业<b class='flag-5'>安全</b>与通信并进:大核桃防爆手机助力工业4.0<b class='flag-5'>时代</b><b class='flag-5'>安全</b>发展!

    半导体发展的四个时代

    代工厂来开发和交付。台积电是这一阶段的关键先驱。 半导体的第四个时代——开放式创新平台 仔细观察,我们即将回到原点。随着半导体行业的不断成熟,工艺复杂性和设计复杂性开始呈爆炸式增长。工艺技术、EDA
    发表于 03-27 16:17

    半导体发展的四个时代

    交给代工厂来开发和交付。台积电是这一阶段的关键先驱。 半导体的第四个时代——开放式创新平台 仔细观察,我们即将回到原点。随着半导体行业的不断成熟,工艺复杂性和设计复杂性开始呈爆炸式增长。工艺技术
    发表于 03-13 16:52

    芯盾时代中标秦农银行 构建安全便捷的业务体系

    芯盾时代中标陕西秦农农村商业银行股份有限公司(以下简称“秦农银行”)!芯盾时代运用统一终端安全、零信任网络访问和智能决策大脑等技术,为秦农银行建设统一身份认证平台,面向银行各应用系统提供统一的、
    的头像 发表于 03-12 11:05 586次阅读
    芯盾<b class='flag-5'>时代</b>中标秦农银行 构建<b class='flag-5'>安全</b>便捷的业务体系

    Secureworks 威胁评分迎来网络安全 AI 新时代

    现在,安全分析师可以确信其正在优先处理并响应对其组织构成最大风险的警报 亚特兰大2024年2月2日 /美通社/ -- 网络安全领域全球领导者 Secureworks® (纳斯达克股票代码: SCWX
    的头像 发表于 02-04 10:46 547次阅读

    AIoT人员定位成化工安全关键

    AIoT人员定位成化工安全关键
    的头像 发表于 01-12 08:13 674次阅读
    AIoT人员定位成化工<b class='flag-5'>安全</b><b class='flag-5'>关键</b>

    SCADE—产品级安全关键系统的MBD开发套件

    安全关键零部件的嵌入式产品级软件提供了SCADE开发套件,支持嵌入式软件详细设计和代码自动生成,有效缩短产品研制周期,提高产品研制效率,提高产品质量。
    的头像 发表于 01-05 14:12 546次阅读
    SCADE—产品级<b class='flag-5'>安全</b><b class='flag-5'>关键</b>系统的MBD开发套件

    中标喜讯 | 芯盾时代再度中标澳门大丰银行 业务应用安全再升级

    星标“芯盾时代” 第一时间接收新鲜推文 芯盾时代再度中标澳门大丰银行,高效实时的处理能力和专业服务获得客户的高度好评。基于前期双方合作取得的优秀成果,芯盾时代通过零信任业务安全产品方案
    的头像 发表于 11-28 15:10 489次阅读
    中标喜讯 | 芯盾<b class='flag-5'>时代</b>再度中标澳门大丰银行 业务应用<b class='flag-5'>安全</b>再升级