导读:这可能是美国政府迄今为止在软件安全问题上采取的最强硬立场,它向软件制造商发出警告:必须修复危险的编码做法,否则就有可能被贴上疏忽的标签。
美国联邦政府正在加强对危险软件开发行为的警告。其中美国网络安全和基础设施安全局(CISA)和联邦调查局(FBI)对持续困扰关键基础设施的基本安全漏洞发出了严厉警告。
CISA 和 FBI 最近联合发布了一份关于产品安全不良实践的报告,警告软件制造商不要采取不良做法,例如使用C 和 C++等内存不安全的编程语言。
https://www.cisa.gov/resources-tools/resources/product-security-bad-practices
报告这样指出:“在有现成的内存安全语言可用的情况下,使用内存不安全的语言(如 C 或 C++)开发用于关键基础设施或(如国家关键功能)NCF 的新产品线是危险的,并且会大大增加对国家安全、国家经济安全以及国家公共健康和安全的风险。”
产品属性,描述软件产品可观察的、与安全相关的质量。
安全特性,描述产品支持的安全功能。
组织流程和政策,描述软件制造商为确保其安全方法的高度透明度而采取的行动。
报告指出,该报告针对的是软件开发产品和服务(包括本地软件、云服务和软件即服务 (SaaS))的软件制造商,这些产品和服务用于支持关键基础设施或 NCF。
“该指导意见是对美国政府此前就此事发表声明的后续,这些声明可以追溯到 2022 年,当时它告诫技术提供商和企业采用者都要采用或迁移到内存安全语言。”
“撇开所有新代码不谈。幸运的是这份文件和美国政府都没有呼吁立即从 C/C++ 迁移到 Rust——这只是一个例子,”他说。“CISA 的安全设计文件承认,软件维护者根本无法像那样大规模迁移他们的代码库。”
该指南虽然是自愿性的,但却代表了 CISA 迄今为止对基本安全实践的最强硬立场。
要让企业了解在关键基础设施方面什么构成疏忽的软件开发实践。
默认密码。
直接 SQL 注入漏洞。
缺乏基本的入侵检测。
缺少多因素身份验证。
公司必须维护软件物料清单(SBOM)。
需要缓存依赖项,而不是从公共源中提取。
需要对他们所依赖的开源项目做出负责任的贡献。
报告指出:“软件制造商应该负责任地使用他们所依赖的开源软件,并为其做出持续的贡献。”
该报告还呼吁提高透明度,并指出:
公司必须发布漏洞披露政策。
需要为所有严重漏洞发布 CVE。
必须提供有关安全问题的清晰文档。
预计至少维护六个月的安全日志。
作者:聆听音乐的鱼
本文为 @ 万能的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。