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

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

3天内不再提示

常见CWE定义了任务关键型应用程序的网络安全漏洞环境

星星科技指导员 来源:嵌入式计算设计 作者:S. TUCKER TAFT 2022-11-09 15:02 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Common Weak Enumeration (CWE) 是软件弱点和漏洞的类别系统,现在用于为开发关键任务嵌入式系统的人员提供源代码分析工具的通用词汇表。CWE项目的一些不同分组(例如与一般编码实践相关的分组)侧重于软件系统中特定于安全的部分,包括身份验证和加密,以及可以通过适当选择编程语言或工具来缓解的部分。最近决定在CWE的框架内包括“通用质量枚举”,该枚举将推广其适用于各种软件弱点,而不是严格意义上与网络安全相关的弱点。

制定 CWE

Common Weak Enumeration(CWE,http://cwe.mitre.org)已经成为每个具有安全意识的任务关键型嵌入式系统开发人员的事实上的参考资源。CWE将所有已知的网络安全漏洞分类为一个系统编号的列表,最新版本(3.2版,从2019年1月开始)包含800多个弱点和近1,200个项目。CWE源于MITRE公司(马萨诸塞州贝德福德和弗吉尼亚州麦克莱恩)的一个项目,该项目旨在描述和总结不断增长的常见漏洞和暴露(CVE)列表;MITRE还与美国国家标准与技术研究院(NIST)维护的国家漏洞数据库(NVD)一起维护CVE列表。

CVE和NVD一起记录了每个公开的网络安全漏洞和暴露事件,可以追溯到1999年。CWE试图将网络安全漏洞和暴露事件分为不同的类别,以便为工具,网络安全专家和整个关键任务软件开发社区提供通用词汇。在 3.2 版中,已努力包含更普遍的质量弱点,这些弱点源自 CQE(通用质量枚举)项目。这些类型的弱点与安全问题没有直接关系,但仍然可能导致生命周期中的重大问题,并且通常可以通过检测以安全为中心的弱点的相同类型的工具检测到。

CWE被用于各种上下文,但也许最重要的是与源代码分析工具有关。从历史上看,每个这样的工具都有自己特定的词汇表,所有这些词汇表都有可能令人困惑或模棱两可的描述,确切地说它旨在检测什么样的软件问题。然而,随着CWE的出现,许多源代码分析工具已经开始使用相关的唯一CWE标识符来识别它们检测到的问题。使用CWE,这种共享词汇能够以有意义的方式组合和比较来自多个工具的结果。即使使用通用术语,使用多个工具也有优势,因为在检测潜在的源代码缺陷时,不同的工具往往具有不同的优势。

CWE 示例

CWE最好通过示例来说明。在第一次查看 CWE 时,区分不同类型的弱点通常是有帮助的。有些我们可以称之为通用,因为它们在任何和每个应用程序中都是值得关注的,例如缓冲区溢出(CWE-120)。基本上,所有程序都使用表、数组或字符串,对于所有此类程序,尝试向表、数组或字符串中放入比它可以容纳的更多内容肯定会产生问题,如果语言通过运行时检查捕获此类尝试,或者最终如果由此类缓冲区溢出损坏的数据用作计算后期阶段的输入。CWE-120的 http://cwe.mitre.org 条目如下(表1)。

表 1:CWE-120。

poYBAGNrUI2AFvXMAAIBllBdlXo036.jpg

除了 CWE-120 之外,还有一组相关的弱点,这些弱点涉及将索引到数组边界之外的类似数组的结构中。在CWE网站上搜索“数组越界”会生成相关CWE条目的列表,其中不仅包括对弱点的描述:它们还包括一些示例来说明那些编程语言中的弱点,其中编译时或运行时检查不会自动检测到弱点。此外,在一些更基本的 CWE(如 CWE-120)的条目中,还提供了其他部分,例如介绍模式、适用平台(通常是弱点更普遍的编程语言)、常见后果、利用的可能性和潜在的缓解措施。缓解措施部分将确定不太可能出现漏洞的语言或平台,以及软件开发或部署实践,这些实践将减少在所使用的语言或平台无法自动阻止漏洞的环境中被利用的可能性。

除了缓冲区溢出及其相关危险等普遍弱点之外,还有一些弱点更特定于应用程序,具体取决于应用程序的性质。例如,正确使用身份验证和授权可能与在物理安全位置之外无法访问的应用程序无关。CWE-284,访问控制不当,解决了这一特定于应用程序的弱点(下一页的表2)。

表 2:CWE-284。

pYYBAGNrUJSAAHwvAAM_PJIBCxs220.jpg

与缓冲区溢出一样,还有一组其他 CWE 条目专注于此一般弱点领域的特定元素。在CWE网站上搜索“身份验证和授权”会生成示例列表。

尽管此类特定于应用程序的 CWE 可能并不适用于所有系统,但具有外部连接的系统的比例每天都在增长。例如,过去只有飞行员才能使用的军事系统现在正在联网,以改善协调和态势感知。尽管网络中的其他系统本身可能是安全的,但干扰通信的可能性始终存在。即使是这些纯粹的计算机到计算机连接也可能需要身份验证和授权,以避免不友好方的欺骗或损坏。最重要的是,越来越多的以前特定于应用程序的CWE在其相关性方面变得更加普遍。

如上所述,刚刚在CWE版本3.2中添加的一组新的CWE条目与安全性没有直接关系,但仍然与强大的关键任务嵌入式系统的构建和发展相关。该组源自几年前构建的实验性通用质量枚举 (CQE),包括 CWE 条目,例如 CWE-1041,冗余代码的使用(表 3)。

表 3:CWE-1041。

poYBAGNrUJqAHbKlAAFRP0LfvpY927.jpg

如表的扩展描述所示,相同代码的重复副本会严重影响系统的维护和演进。这也是一个普遍的质量和可维护性问题,事实上,几乎每个系统都会发生,与编程语言或开发过程无关。甚至还有一个三个字母的首字母缩略词专门用于这个问题:DRY – 不要重复自己!代码的重复在某种程度上是“不要重新发明轮子”的另一面。无论是重复自己还是重新发明轮子,都不是程序员构建长期关键任务系统的正确答案。关键是抽象、模块化和编程平台底层的良好库系统,因此可重用的组件可以抽象为可以多次调用或实例化的组件,而无需依赖复制和粘贴。

CWE 兼容工具

正如上述少量CWE条目所证明的那样,CWE与软件密集型系统开发过程中每天面临的挑战直接相关。有了这个通用词汇,软件项目现在可以根据工具是否可以检测甚至建议更正正在开发或部署的系统源代码中的此类弱点来识别和评估工具。事实上,MITRE 已经建立了一个遵循 CWE 命名法的工具注册表,无论是在控制其操作方面,还是在生成报告方面。此工具列表作为MITRE的CWE兼容性和有效性计划的一部分进行维护。

目前,大约有35家公司在CWE兼容工具注册表中列出了50多种工具。要在注册表中列出,该工具必须至少满足以下六个条件中的前四个:可使用 CWE 标识符进行 CWE 搜索;必须包含或允许用户获取相关的 CWE 标识符;必须准确链接到适当的 CWE 标识符;必须描述 CWE、CWE 兼容性和 CWE 相关功能;必须明确列出功能声称覆盖范围和有效性的 CWE-ID,以防止在软件中定位;并且必须在网站上显示 CWE 评估软件的测试结果。

作为某些类型的工具如何将 CWE 标识符集成到其用户界面中的示例,下面是静态分析工具的屏幕截图,展示了它在示例程序 [dining_philosophers.adb – 基于经典的餐饮哲学家算法] 中检测各种 CWE 问题的能力(图 1)。

图1:屏幕截图演示了该工具在示例程序中检测 CWE 问题的能力。

pYYBAGNrUKOAcKwiAAGpgZ62oQw700.jpg

如上所示,显示的每条消息都包含与每个已识别问题关联的 CWE 标识符(在本例中,我们看到缓冲区溢出和数字范围溢出)。图形界面还使用户能够通过CWE标识符识别当前感兴趣的特定弱点,从而过滤掉与这些问题无关的消息。虽然此处未显示,但将鼠标悬停在 CWE 标识符上会显示弱点的简短描述,因此用户无需尝试记住每个 CWE ID 的含义。

作为另一个示例,下面是一个工具的屏幕截图,该工具支持在 Ada 的 SPARK 子集中编写的程序的程序属性的形式证明。

图2:屏幕截图显示了相应的 CWE 标识符。

poYBAGNrUKWAJa0fAAFxsENdTcw787.jpg

在这里,我们再次看到指示工具无法完全自动化证明运行时错误缺失 (AoRTE) 属性的位置的消息包括适当的 CWE 标识符。上面还显示了一个搜索功能,可以过滤掉非 CWE 邮件(在本例中,通过在搜索框中写入“CWE”),或者可以识别引用特定 CWE ID 的邮件。

MITRE对常见弱点枚举的定义为开发更安全,更健壮的软件密集型系统的整个过程做出了重要贡献。它提供了一个通用词汇表,有助于软件开发组织内部的沟通,并允许用户理解和比较用于扫描和分析任务关键型软件源代码的工具的功能。设计人员会发现,将CWE兼容功能纳入静态分析和形式化方法工具集,使用户能够轻松了解可以消除的安全性和鲁棒性问题。

审核编辑:郭婷

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

    关注

    5209

    文章

    20668

    浏览量

    337145
  • 应用程序
    +关注

    关注

    38

    文章

    3346

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    汽车网络安全TARA分析全指南:从基础原理到落地实操

    TARA 分析的核心逻辑与实操方法,同时规避行业常见误区。 一、TARA 分析到底是什么? 核心定义 TARA 分析是汽车行业通用的、标准化的网络安全方法论,核心是 通过系统化的流程,识别车辆面临
    发表于 04-27 15:32

    汽车网络安全合规全流程深度解析——从法规门槛到落地实践

    潜在网络安全风险 主动防御机制:从技术与流程层面防范网络攻击 持续监控与响应:在车辆全生命周期内快速响应与处置安全事件 2.3 与功能安全的区别 一个
    发表于 04-21 13:03

    汽车网络安全 ISO/SAE 21434是什么?(一)

    并解决漏洞,大幅降低后期修复成本; c.供应链协同:建立统一的汽车网络安全“语言” 与要求,提升 OEM 与 Tier1/2 供应商的协作效率,降低供应链安全风险; d.信任建立:向监管机构、用户
    发表于 04-07 10:37

    汽车网络安全:法规、强标、标准的关系(二)

    在汽车网络安全领域,法规、强制性标准(简称“强标”)及 标准三者紧密关联,共同构成车辆上市销售的合规体系,其中法规和强标均有强制约束力,直接决定车辆能否合法入市,推荐性标准则为合规落地提供具体实施
    发表于 04-03 15:25

    分析嵌入式软件代码的漏洞-代码注入

    随着互联网的发展,嵌入式设备正分布在一个充满可以被攻击者利用的源代码级安全漏洞环境中。 因此,嵌入式软件开发人员应该了解不同类型的安全漏洞——特别是代码注入。 术语“代码注入”意味着对程序
    发表于 12-22 12:53

    兆芯亮相第十五届网络安全漏洞分析与风险评估大会

    12月10日,由中央网络安全和信息化委员会办公室、国家市场监督管理总局共同指导,中国信息安全测评中心主办的“第十五届网络安全漏洞分析与风险评估大会(VARA)”在天津梅江会展中心隆重召开。
    的头像 发表于 12-17 17:47 1397次阅读

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

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

    攻击逃逸测试:深度验证网络安全设备的真实防护能力

    网络安全设备从研发到部署全生命周期中防护有效性的关键环节,通过模拟真实逃避手法,确保防护体系的有效性。 测试的核心价值: 实战检测能力验证:要求测试系统能够模拟真实攻击变种,评估设备对混淆流量、多态攻击
    发表于 11-17 16:17

    兆芯加入基础软硬件产品漏洞生态联盟

    近日,CCS 2025成都网络安全技术交流系列活动——国家漏洞库(CNNVD)基础软硬件产品漏洞治理生态大会在成都成功举办。来自国家关键基础设施单位、基础软硬件企业、高校科研机构的数百
    的头像 发表于 09-22 13:50 985次阅读

    Docker生产环境安全配置指南

    据统计,超过60%的企业在Docker生产环境中存在严重安全漏洞。本文将揭示那些容易被忽视但致命的安全隐患,并提供完整的企业级解决方案。
    的头像 发表于 09-02 16:27 1262次阅读

    DEKRA德凯产品网络安全全球准入深圳研讨会顺利举行

    随着全球网络安全监管政策不断趋严,尤其是欧盟无线电设备指令(RED)的网络安全要求已于2025年8月1日正式强制实施,网络安全已经成为全球产品市场准入的关键门槛之一。如何在复杂多变的国
    的头像 发表于 08-28 15:50 810次阅读

    wifi解决方案实现网络安全

    silex希来科wifi解决方案实现网络安全
    的头像 发表于 08-27 15:01 794次阅读

    国芯科技荣获TÜV 北德 ISO/SAE 21434 汽车网络安全流程认证证书

    赛道上迈出了坚实且关键的一步。 ISO/SAE 21434 是全球汽车行业极具权威性与影响力的网络安全标准。在智能网联汽车飞速发展的当下,车辆与外界的信息交互愈发频繁,面临的网络攻击风险也与日俱增,从黑客入侵远程控制车辆,到恶意
    的头像 发表于 06-23 15:22 7568次阅读
    国芯科技荣获TÜV 北德 ISO/SAE 21434 汽车<b class='flag-5'>网络安全</b>流程认证证书

    筑牢智慧路灯网络安全防线,为智慧城市发展保驾护航

    功能的不断拓展和联网设备的激增,其面临的网络安全风险也日益凸显。从设备层的漏洞利用到网络层的数据窃取,再到应用层的系统入侵,每一个环节的安全隐患都可能成为威胁智慧城市
    的头像 发表于 05-28 22:27 720次阅读
    筑牢智慧路灯<b class='flag-5'>网络安全</b>防线,为智慧城市发展保驾护航

    飞腾网络安全工控机,互联网时代的安全卫士与坚韧后盾

    网络安全工控机‌是一种专为工业环境设计的计算机系统,主要用于工业控制与网络安全。它融合计算机技术、自动化技术和通信技术,具备高稳定性、高可靠性、强实时性以及良好的扩展性。‌
    的头像 发表于 04-30 09:15 739次阅读