聚焦源代码安全,网罗国内外最新资讯!
编译:代码卫士
这份指南建议使用内存安全编程语言 (MSLs),帮助消除威胁行动者经常在恶意攻击中利用的已知和常见编程错误。该指南还为软件制造商提供了关于“创建和发布内存安全路线图,向客户展示他们如何获得安全结果、拥抱急剧变化的透明度并采取自上而下的方式开发安全产品”。
五眼联盟机构提到,尽管投入大量资源减少内存安全漏洞的普遍性,但该类型漏洞仍然存在。不过,使用内存安全编程语言应当能够消除这类安全缺陷并降低其影响,从而使开发人员和客户能够将资源投入到其它领域。
指南中提到,“消除这类漏洞应当被视作业务推动力,可能要求很多部门的共同参与。权力机构督促管理人员以身作则,找到将推动路线图发布的资深人员并协助拉通所需资源。”
用于减少内存安全漏洞的缓解方法包括开发人员培训、代码覆盖(测试尽可能多的代码)、安全代码指南、模糊测试、使用静态应用安全测试 (SAST) 和动态应用安全测试 (DAST) 工具,以及使用更安全的语言子集。
为降低此类漏洞的影响,防御人员已将内存片段标记为不可执行文件、采用了控制流完整性 (CFI)、地址空间布局随机化 (ASLR)、沙箱以及其它缓解措施,并且正在考虑使用硬件来支持内存防护措施。
指南中提到,“尽管软件制造商投入大量资源,尝试缓解内存安全漏洞,但这些漏洞仍然普遍存在。客户必须扩充大量资源,通过繁复的补丁管理计划和事件响应活动来应对这些漏洞。”
使用MSLs 应当会为软件制造商及其客户带来好处,提升代码可靠性、减少修复所报告漏洞的需求以及紧急发布的数量、最终减少客户需要安装的紧急更新数量以及数据泄露事件。
指南指出,“除了为软件制造商及其客户带来好除外,MSLs 减少了产品的攻击面,从而将提升恶意人员需要投入更多资源发现其它可利用漏洞的成本。”
软件制造商在开发内存安全路线图时,应当考虑如何排列转换优先级、使用适当的MSLs 以及如何培训开发人员。为此,五眼联盟还推荐了具体的步骤。
该指南还概述了软件制造商在使用 MSLs 时会遇到的挑战以及内存安全路线图应当包括的元素详情。指南提到,“消除内存安全漏洞最具前景的路径是软件制造商找到关于标准化内存安全编程语言的方法,缓解已有代码库内存安全编程语言的安全关键软件组件。”
该指南由美国网络安全局CISA、国家安全局NSA、联邦调查局FBI,澳大利亚的网络安全中心、加拿大网络安全中心、英国国家网络安全中心以及新西兰的国家网络安全中心和计算机紧急响应团队编写而成。
题图:Pixabay License
本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。
觉得不错,就点个 “在看” 或 "赞” 吧~