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

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

3天内不再提示

采用更高级的应用程序安全框架

星星科技指导员 来源:嵌入式计算设计 作者:GrammaTech 2022-06-15 14:07 次阅读

它包含庞大的代码库并跨越关键的板载系统。多年来,制造商一直依赖MISRA C/C++ 编码指南来帮助软件开发。该框架为汽车行业及其他行业带来了实际好处和安全收益。

许多创建汽车软件的开发团队使用 MISRA 指南和应用程序安全工具,包括静态应用程序安全测试 (SAST)。这使得在途中发现语法和其他编码错误成为可能,从而降低安全漏洞和关键安全问题的风险。该框架还有助于降低开发成本并加快上市时间。

然而,以最大效率结合使用这些指南和工具可能具有挑战性。问题?许多应用程序安全 (AppSec) 工具需要大量的人工干预或监督,才能充分了解它们如何影响各种流程。

破解密码

问题的核心是一个基本事实:在手动执行 MISRA 标准时会很困难。许多基本的 AppSec 工具只处理规则检查——因此提供了一些帮助,但回避了与应用程序安全相关的核心问题。它们不解决关键任务,例如错误检测和安全漏洞分析。

不幸的是,遵循基本的 MISRA 指南并不能提供足够的保护。虽然它可以消除一些错误并提高 C 或 C++ 的代码质量,但它并不针对庞大的代码库和日益复杂的开发实践。错误和缺陷仍然是编写代码的不幸和不可避免的副作用。

这是所有汽车制造商都面临的问题。研究表明,商业软件平均每 1,000 行代码 (KLOC) 就有一个缺陷。虽然开源表现更好一些,但它的测量值为 0.68/KLOC,但它仍然是一个严重的问题。考虑一下:今天的豪华车有大约 1 亿行代码。即使在最佳情况下,这也代表了大约 10,000 个影响质量、安全和安保的潜在缺陷。

当然,事后补救问题和修复问题既昂贵又耗时。当召回车辆以修复软件缺陷时,这也会给消费者带来压力。不幸的是,问题的根本原因通常仍然未知,并且很难找到漏洞的实际来源。这意味着开发人员必须重现故障,对其进行分析,并尝试了解它如何影响代码库的其他部分。实际上,这意味着许多错误可能永远无法修复。

但是,当组织以更深入、更广泛的方式将包括 SAST 在内的 AppSec 集成到开发过程中时,就有可能将安全性提升到更高级的水平。组织不再局限于代码库的部分快照。可以深入研究,获得可见性并进行更详尽的测试。使用 SAST,可以在开发过程的早期解决和修复缺陷,加速软件发布并确保质量、安全和保障。

推进 AppSec

好消息是高级测试解决方案支持更全面的应用程序安全框架。他们可以发现传统开发方法中漏掉的缺陷。这包括确定关键问题,例如:

经常随机发生的并发缺陷,只有在组织在最终硬件平台上集成各种系统和代码存储库后才可见。

安全漏洞,也就是软件缺陷,可以被攻击者利用,以便他们可以干扰系统的行为并获得对关键数据的访问权限。

警告潜在漏洞的污染数据分析可能格式不正确。因为这些数据要经过许多系统,所以通常很难发现。

难以检测的复杂程序间缺陷,尤其是单元和子系统测试。

对显示为目标文件、库和可执行文件的编译代码进行错误检测。这些可以掩盖关键的安全问题。

虽然一些 MISRA 规则足够简单,只依赖于代码语法检查器,但单独依赖这种方法是错误的。更好的方法是更深入地扩展分析并解决上述关键问题。这包括生成软件材料清单 (SBOM) 的能力,该清单可识别软件的成分列表——包括第三方和开源组件。

SBOM 还将附有这些已识别组件的漏洞报告。这允许组织检测可能影响软件安全性的隐藏问题。更高级的框架还可以检测困难的情况,例如需要查看多个连接点、检查所有编译单元并比较每个编译单元中的所有此类标识符。这些通常会导致假阳性和假阴性。

增加挑战:人类经常误解这些情况——尤其是在依赖手动工具和报告时。最后,一个组织在试图完全理解规则的超集和子集、识别安全漏洞和避免死代码时会被蒙在鼓里。另一方面,最佳实践框架可以发现规则指定的内容与检查器发现的内容之间的重叠和差距。

该模型最终通过在开发的早期阶段发现和修复缺陷和漏洞来降低风险和节省时间。它通常使文档自动化并削减成本。反过来,这种增加的文档级别改进了治理框架并简化了法规遵从性。通过将该解决方案集成到对安全至关重要的环境中,汽车制造商和其他公司可以获得巨大的收益。

今天,企业级开发项目需要复杂的测试框架来支持和增强整个软件开发生命周期——包括与其他开发自动化工具的集成。超越 MISRA 规则执行和基本 AppSec 的能力带来了巨大的收益。它改善了保护,降低了成本,并使开发人员能够专注于他们最擅长的事情:构建出色的软件。

审核编辑:郭婷

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

    关注

    3027

    文章

    7980

    浏览量

    167255
  • 应用程序
    +关注

    关注

    37

    文章

    3283

    浏览量

    57750
收藏 人收藏

    评论

    相关推荐

    SSM框架的源码解析与理解

    MVC模式,使得开发Web应用程序变得更加高效和简单。 1. Spring框架 基本功能: Spring是一个开源的Java平台,它提供了全面的基础设施支持,以便开发Java应用程序。Spring
    的头像 发表于 12-17 09:20 290次阅读

    SSM框架在Java开发中的应用 如何使用SSM进行web开发

    (full-stack)的应用程序框架,它提供了全面的基础设施建设支持,能够帮助开发者构建出企业级的应用程序。Spring的核心是控制反转(I
    的头像 发表于 12-16 17:28 532次阅读

    TAS2521应用程序参考指南

    电子发烧友网站提供《TAS2521应用程序参考指南.pdf》资料免费下载
    发表于 12-10 13:49 0次下载
    TAS2521<b class='flag-5'>应用程序</b>参考指南

    AWTK-WEB 快速入门(2) - JS 应用程序

    导读AWTK可以使用相同的威廉希尔官方网站 栈开发各种平台的应用程序。有时我们需要使用Web界面与设备进行交互,本文介绍一下如何使用JS语言开发AWTK-WEB应用程序。用AWTKDesigner新建一个应用程序先安装AWTKDesigner
    的头像 发表于 12-05 01:04 127次阅读
    AWTK-WEB 快速入门(2) - JS <b class='flag-5'>应用程序</b>

    AWTK-WEB 快速入门(1) - C 语言应用程序

    导读AWTK可以使用相同的威廉希尔官方网站 栈开发各种平台的应用程序。有时我们需要使用Web界面与设备进行交互,本文介绍一下如何使用C语言开发AWTK-WEB应用程序。用AWTKDesigner新建一个应用程序
    的头像 发表于 11-27 11:46 230次阅读
    AWTK-WEB 快速入门(1) - C 语言<b class='flag-5'>应用程序</b>

    JavaWeb框架比较

    JavaWeb框架为开发人员提供了构建Web应用程序所需的基础设施和组件,每种框架都有其独特的特点和适用场景。以下是对几种主流JavaWeb框架的比较: Spring MVC 优点
    的头像 发表于 11-25 09:14 240次阅读

    日志框架简介-Slf4j+Logback入门实践

    前言 随着互联网和大数据的迅猛发展,分布式日志系统和日志分析系统已广泛应用,几乎所有应用程序都使用各种日志框架记录程序运行信息。因此,作为工程师,了解主流的日志记录框架非常重要。虽然
    的头像 发表于 07-30 10:00 1166次阅读
    日志<b class='flag-5'>框架</b>简介-Slf4j+Logback入门实践

    WPS完成后,主机应用程序如何从ESP读取WPA安全密钥?

    WPS 完成后,主机应用程序如何从 ESP 读取 WPA 安全密钥? AT WPS 命令似乎将结果存储在闪存中,以便 ESP 下次将连接到同一 AP。 ESP是否可以选择不将其存储到闪存中,以便它不会在尝试立即连接时从重置中出来?
    发表于 07-16 08:28

    OpenAI推出ChatGPT桌面版应用程序

    OpenAI 近日宣布,备受期待的 ChatGPT 桌面版应用程序现已正式发布。在官方公告中,OpenAI 表示他们首先会将这款应用提供给 Plus 用户群体,并特别针对 macOS 系统推出。这是该公司为了满足用户对更便捷、更高效交流方式的需求而采取的重要一步。
    的头像 发表于 05-14 11:51 1041次阅读

    Anthropic推出iPhone应用程序和业务层

    Anthropic 推出 iPhone 应用程序和业务层,支持使用Claude 3 Opus、Sonnet 和 Haiku 模型
    的头像 发表于 05-07 10:22 459次阅读

    专家解读 | NIST网络安全框架(1):框架概览

    本文主要探讨NIST CSF框架的起源目标、内容组成,及其在网络安全风险管理中的关键作用,通过采用框架,组织能够更有效地实施风险识别、安全
    的头像 发表于 05-06 10:30 1387次阅读
    专家解读 | NIST网络<b class='flag-5'>安全</b><b class='flag-5'>框架</b>(1):<b class='flag-5'>框架</b>概览

    使用Docker部署Go Web应用程序步骤

    大多数情况下Go应用程序被编译成单个二进制文件,web应用程序则会包括模版和配置文件。而当一个项目中有很多文件的时候,由于很多文件没有同步就会导致错误的发生并且产生很多的问题。
    发表于 04-20 09:33 525次阅读
    使用Docker部署Go Web<b class='flag-5'>应用程序</b>步骤

    【从0开始创建AWTK应用程序】编译应用到RTOS平台

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发调试环境、使用AWTK创建Hello工程并在模拟器上运行、将AWTK应用程序移植到其它平台。在
    的头像 发表于 03-21 08:23 634次阅读
    【从0开始创建AWTK<b class='flag-5'>应用程序</b>】编译应用到RTOS平台

    应用程序中的服务器错误怎么解决?

    在使用应用程序时,可能会遇到服务器错误的问题。这种错误通常会导致应用程序无法正常运行 ,给用户带来不便。下面将介绍应用程序中的服务器错误及其解决方法,帮助您快速解决这一问题。
    的头像 发表于 03-12 15:13 6316次阅读

    LTE MQTT通信应用程序说明

    电子发烧友网站提供《LTE MQTT通信应用程序说明.pdf》资料免费下载
    发表于 02-21 10:47 0次下载
    LTE MQTT通信<b class='flag-5'>应用程序</b>说明