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
    +关注

    关注

    20

    文章

    3006

    浏览量

    116833
  • C++
    C++
    +关注

    关注

    22

    文章

    2131

    浏览量

    77378
  • 代码
    +关注

    关注

    30

    文章

    4976

    浏览量

    74384
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    芯盾时代助力江苏长江商业银行构建身份安全防护体系

    芯盾时代中标江苏长江商业银行!芯盾时代用户身份与访问管理(IAM)以零信任安全为理念,通过全局身份统一治理,统一身份认证,多云与AI场景适配,权限管理和安全审计等核心能力,为江苏长江商
    的头像 发表于 03-11 16:57 1225次阅读

    Momenta获行业首个安全机制关键中间件ASIL D全认证

    Momenta已在底层架构上构建起国际领先的智驾安全体系,为“软件定义汽车”时代的系统级安全,树立了全新的行业标杆。
    的头像 发表于 03-10 14:43 1089次阅读

    Parasoft C/C++test:嵌入式安全关键行业的一体化软件测试解决方案

          在汽车电子、工业控制、医疗设备、航空航天等嵌入式安全关键行业,软件质量与功能安全直接决定产品可靠性与合规准入。面对日益复杂的代码架构与高速迭代的开发需求,企业亟需一套覆盖全
    的头像 发表于 03-06 09:42 384次阅读

    AI代码之争忽略了什么

    人工智能的兴起让 COBOL 重新成为话题焦点,市场上也涌现出不少号称能转换遗留代码、破解现代化难题的工具。但关键在于厘清这究竟意味着什么,以及它不包含什么。代码转换是一回事,平台现代
    的头像 发表于 03-02 15:20 698次阅读

    人工智能时代,如何打造网络安全“新范式”

    在当今信息化迅速发展的时代,5G、大数据、云计算、深度学习等新兴技术的广泛应用,带来了前所未有的网络安全挑战。人工智能技术的崛起,为网络安全领域提供了新的解决方案,尤其在威胁识别、告警分析、态势感知
    的头像 发表于 12-02 16:05 581次阅读

    如何确保电能质量在线监测装置的安全防护检查覆盖所有关键环节

    要确保电能质量在线监测装置(以下简称 “装置”)的安全防护检查覆盖所有关键环节,需遵循 “ 先定义关键环节→再分场景拆解检查点→最后通过流程、工具、人员形成闭环管控 ” 的逻辑,从 “硬件安全
    的头像 发表于 09-23 14:42 880次阅读
    如何确保电能质量在线监测装置的<b class='flag-5'>安全</b>防护检查覆盖所有<b class='flag-5'>关键</b>环节

    充电桩测试:守护绿色出行的安全密码

    在新能源汽车蓬勃发展的时代浪潮下,充电桩作为核心配套设施,其质量与安全性至关重要。每一次稳定的充电过程背后,都离不开严谨细致的测试工作。那么,在充电桩测试中究竟需要注意哪些关键点呢? 电气性能是首要
    发表于 09-18 13:52

    芯盾时代助力遂宁银行破解金融业务安全痛点

    芯盾时代中标遂宁银行!芯盾时代基于零信任安全理念,通过自研的零信任企业安全产品线,为客户构建覆盖用户身份全生命周期、API应用全链条的动态防护体系,为遂宁银行数字化转型筑牢
    的头像 发表于 09-16 14:04 911次阅读

    边聊安全 | 智能驾驶时代的新挑战:AI功能安全

    智能驾驶时代的新挑战:AI功能安全写在前面:随着人工智能(AI)技术在自动驾驶汽车等领域的快速发展,其功能安全性成为了一个不可忽视的议题。功能安全指的是在正常或异常操作情况下,系统能够
    的头像 发表于 09-05 16:20 1862次阅读
    边聊<b class='flag-5'>安全</b> | 智能驾驶<b class='flag-5'>时代</b>的新挑战:AI功能<b class='flag-5'>安全</b>

    Dirsearch 安全实战指南

    在 Web 安全渗透测试中,发现隐藏目录和敏感文件是信息收集的关键环节。这些资源可能包含后台入口、数据库备份等关键信息,是突破防线的重要突破口。dirsearch 凭借灵活配置与高效扫描能力,成为
    的头像 发表于 09-02 10:31 931次阅读

    芯盾时代与某央企合作建设零信任安全网关

    芯盾时代再度中标某央企,基于前期建设的统一身份认证系统,此次合作建设零信任安全网关将进一步完善零信任安全体系,实现集团“身份-设备-应用”的全链条防护,降低关键系统的访问风险,保障员工
    的头像 发表于 08-20 10:34 1539次阅读

    国民技术安全芯片筑牢关键信息基础设施安全防线

    在数字浪潮席卷全球的当下,关键信息基础设施宛如国家经济社会运行的中枢神经,其安全与否,直接关乎国计民生与国家安全。近期,《关键信息基础设施商用密码使用管理规定》正式发布,这一规定犹如为
    的头像 发表于 07-07 11:28 1665次阅读
    国民技术<b class='flag-5'>安全</b>芯片筑牢<b class='flag-5'>关键</b>信息基础设施<b class='flag-5'>安全</b>防线

    编译器功能安全验证的关键要素

    在汽车、工业、医疗等安全关键型应用中,确保功能安全合规性需要严格的工具链验证。开发安全关键型软件的企业必须遵守ISO 26262、IEC 6
    的头像 发表于 07-05 13:37 1701次阅读

    请问K210和K230开发如何确保代码安全?

    K210和K230开发如何确保代码安全?
    发表于 06-06 06:38

    芯盾时代全场景身份治理解决方案助力企业提升业务安全

    芯盾时代中标某人寿保险,持续深化业务安全项目合作。芯盾时代为客户建设IAM系统,为PC端和移动端的应用提供统一、安全、便捷的统一身份管理服务,进一步强化身份认证、权限管理、数据
    的头像 发表于 05-07 10:29 1007次阅读