专栏名称: 云头条
引领科技变革,连接技术与商业
目录
相关文章推荐
内蒙古教育发布  ·  新学期 “新” 引力!叮!校园生活重启键已启动~ ·  17 小时前  
内蒙古教育发布  ·  新学期 “新” 引力!叮!校园生活重启键已启动~ ·  17 小时前  
河北交通广播  ·  【992 | 万象】太巧了,四分钟找回身份证! ·  20 小时前  
河北交通广播  ·  【992 | 关注】中国联通原副总经理,被双开! ·  昨天  
河北交通广播  ·  迎春花开了!附近很多地方都有,你看过了吗? ·  昨天  
河北交通广播  ·  【992 | ... ·  3 天前  
51好读  ›  专栏  ›  云头条

美国政府:强制要求丢弃 C/C++

云头条  · 公众号  ·  · 2024-11-01 23:50

正文

这是美国政府迄今在软件安全问题上最强硬的立场,提醒软件开发商:修正危险的编程做法,否则有可能被扣上玩忽职守的帽子。
随着美国网络安全和基础设施安全局( CISA 联邦调查局( FBI )对持续困扰关键基础设施的基本安全 缺位 发出严厉警告,联邦政府正在加强 警告 危险软件开发实践的 力度
CISA 与 FBI 最近联合发布了一份关于产品安全不良做法的报告,警告软件开发商切勿采取不良做法,比如使用 C 和 C++ 等内存不安全的编程语言。

报告称:“在唾手可得的替代内存安全语言可以使用的情况下,使用内存不安全的语言(比如C或C++)开发用于关键基础设施或国家关键功能(NCF)的新产品系列,此举很危险,而且会大大增加对国家安全、国家经济安全和国家公共卫生及安全造成的风险。”

三个类别

报告称,不良做法分为以下三类:

(1)产品属性,描述了软件产品的可观察的、与安全相关的质量。

(2)安全特性,描述产品支持的安全功能。

(3)组织流程和策略,描述了软件开发商为确保其安全方法的高透明度而采取的行动。

该报告针对开发用于支持关键基础设施或 NCF 的软件产品和服务的软件开发商,包括本地软件、云服务和软件即服务(SaaS)。

避免不良做法,遵循建议

此外,该报告还鼓励所有软件开发商避免这些产品安全不良做法。报告称:“如果遵循本指南中的建议,开发商将向客户发出讯号,表明他们在为客户的安全承担责任,这是一条关键的通过设计确保安全(Secure by Design)原则。”

市场调研机构 Omdia 的分析师 Brad Shimmin 表示:“这份指南无疑紧跟美国政府早前就该问题发表的声明,那份声明可以追溯到2022年,警告技术提供商和采用技术的企业采用或迁移到内存安全语言。”

他说:“幸运的是,抛开所有新代码不谈,这份文件和美国政府都没有要求立即从C/C++迁移到Rust,仅仅举例而已。CISA的通过设计确保安全文件认识到,软件维护者根本无法像这样大规模迁移代码库。”

尽管这份指南是自愿遵循的,但代表了CISA迄今在基本安全做法方面最强硬的立场——告诫公司在关键基础设施方面什么是玩忽职守的软件开发实践。

进入倒计数

然而对软件开发商来说,时间紧迫。公司企业必须在 2026 年 1 月 1 日之前制定好内存安全路线图。

报告称:“对于使用内存不安全语言编写的现有产品,在2026年1月1日之前没有发布内存安全路线图很危险,并且会大大增加对国家安全、国家经济安全和国家公共卫生及安全造成的风险。”

此外,必须在 2026 年 1 月 1 日之前清除管理员帐户的默认密码。这样的截至日期标志着由建议变成期望的标准。

该报告还指出,内存安全路线图应该概述开发商消除重要代码组件(比如面向网络的代码或处理加密操作等敏感功能的代码)中的内存安全漏洞的优先方法。

报告称:“开发商应该表明,内存安全路线图将有助于开发商的产品中的内存安全漏洞显著减少,并表明他们在做出最大的努力来遵循内存安全路线图。”

Shimmin 告诉 IT 外媒 The New Stack:“企业继续维护大规模的COBOL和Fortran代码有两个充分的理由,即成本和风险。移植数百万行代码在经济上根本行不通,任何负责任的组织也不会承担这样的风险。”

然而据报告声称,关键基础设施仍然遭受“异常危险”的做法,比如:

(1)默认密码。

(2)直接 SQL 注入漏洞。

(3)缺乏基本的入侵检测。

(4)缺少多因素身份验证。

开源

关于开源软件,报告称应该特别关注开源漏洞。其他建议包括:

(1)公司必须维护软件材料清单(SBOM)。

(2)需要缓存依赖项,而不是从公共来源中提取。

(3)需要负责任地为他们依赖的开源项目贡献代码。

报告称:“软件开发商应该负责任地使用他们所依赖的开源软件,并持续地贡献代码。”

报告还敦促提高透明度,指出:

(1)公司必须公布漏洞披露政策。

(2)需要发布针对所有严重漏洞的 CVE。

(3)必须提供有关安全问题的清晰文档。

(4)预计维护 6 个月的安全日志。

这是一件好事

Shimmin 表示,最后,CISA 建议维护关键软件的公司在 2026 年初之前制定一份明确的防攻击计划,这是一件好事,因为这将让行业有更多的时间来想出一种更有技巧的方法,为我们的关键软件资产确保安全。

他表示:“这些手段可能需要硬件制造商加强防止潜在的攻击途径,需要编程语言维护者提出一些想法(比如安全C++提议),该提议要求创建C++超集,以解决内存安全问题,又不用强制大规模重写代码。”

报告全文:







请到「今天看啥」查看全文