Redian新闻
>
NSA:建议从 C/C++ 切换到内存安全语言

NSA:建议从 C/C++ 切换到内存安全语言

公众号新闻
出品 | OSC开源社区(ID:oschina2013)
美国国家安全局(NSA)发布了一份指南,旨在帮助软件开发商和运营商预防和缓解软件内存安全问题。其鼓励组织将编程语言从 C 和 C++ 之类的语言转变为内存安全的替代语言 —— 即 C#、Rust、Go、Java、Ruby 或 Swift,以保护代码免受远程代码执行或其他黑客攻击。
“NSA 建议企业尽可能使用内存安全语言,并通过编译器选项、工具选项和操作系统配置等代码强化防御措施加强保护。”
NSA 方面表示,内存安全问题在可利用的漏洞中占比很大。并引用了微软的数据指出,该公司从 2006 年到 2018 年 70% 的漏洞是由于内存安全问题造成的;谷歌的 Chrome 在几年内也发现了类似比例的内存安全漏洞。
该组织认为,恶意的网络行为者会利用不良的内存管理问题来访问敏感信息、颁布未经授权的代码执行、以及造成其他负面影响,而这些通常会危及设备并成为大规模网络入侵的第一步。
“常用的语言,如 C 和 C++,在内存管理方面提供了很大的自由度和灵活性,同时严重依赖程序员对内存引用执行所需的检查,简单的错误就可能会导致可利用的基于内存的漏洞。软件分析工具可以检测到许多内存管理问题的实例,操作环境选项也可以提供一些保护,但内存安全软件语言所提供的固有保护可以防止或减轻大多数内存管理问题。
NSA 建议在可能的情况下使用内存安全语言。虽然使用非内存安全语言的附加保护措施和使用内存安全语言并不能对可利用的内存问题提供绝对的保护,但它们确实提供了相当的保护。因此,私营部门、学术界和美国政府的总体软件界已经开始倡议,推动软件开发文化向使用内存安全语言发展。
不过 NSA 也指出,“内存安全” 有点用词不当,且这个概念也是相对的。并警告称,即使使用内存安全语言,内存管理也不完全是内存安全的。
“大多数内存安全语言承认,软件有时需要执行不安全的内存管理功能来完成某些任务。因此,有一些类或函数被认为是非内存安全的,并允许程序员执行可能不安全的内存管理任务。某些语言要求对任何内存不安全的内容进行明确的注释,以使程序员和程序的任何审查者意识到它是不安全的。内存安全语言还可以使用以非内存安全语言编写的库,因此可以包含不安全的内存功能。尽管这些包含内存不安全机制的方法颠覆了固有的内存安全性,但它们有助于定位可能存在内存问题的位置,从而可以对这些代码部分进行额外的审查。”
另一方面,一些内存安全语言可能会以性能为代价。此外,学习一门新的语言也并不容易;譬如,Rust 虽然功能强大,但学习曲线相当陡峭。
更多详情可查看完整报告:https://media.defense.gov/2022/Nov/10/2003112742/-1/-1/0/CSI_SOFTWARE_MEMORY_SAFETY.PDF

【OSCHINA 2022 中国开源开发者问卷】来啦
你的反馈将有助于反映中国开源的全貌
问卷结尾还可抽取我们的周边好物哦~
期待来自你的反馈!

往期推荐



Go开源13周年,今年获有史以来最大改变

微软贡献Linux内核代码,可运行多个Windows

微软在 Windows 11 的开始菜单嵌入广告



这里有最新开源资讯、软件更新、技术干货等内容
点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦~

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
Dart 3 将成为 100% 健全的空安全语言售价1599元的羽绒服全身镂空 商家:建议多穿件衣服Chrome再次优化内存占用,新增内存释放开关她是把自己三魂七魄都瘦丢了一半吧?感觉皮都要贴到内脏上了...金属孔板从外到内,快速打造模块化办公室美丽与野性共存的冰川国家公园(4)格林内尔冰川步道-美极了100亿参数的语言模型跑不动?MIT华人博士提出SmoothQuant量化,内存需求直降一半,速度提升1.56倍!售价1599元的羽绒服全身镂空,商家:建议多穿件衣服中国研究:建议欧洲少吃肉多吃素放开,不是由困难模式切换到岁月静好,而是切换到另一种困难模式!你的Flutter应用该考虑迁移代码了:Dart 3将在2023年成为100%健全的空安全语言我如何从 Docker Desktop 切换到 Colima | Linux 中国从KPI换到OKR,激励考核更畸形?你可能陷入了“激励陷阱”!“最大恒星”将要毁灭地球?天文学家:建议洗洗睡受不了 Rust 这些问题,我将后端切换到了 Go机器学习穷途末路?裁员潮下大厂员工艰难「求生」,知名教授:建议考公鸟下花飞联王室专家:建议梅根放弃“吐苦水”品牌,打造自己的个人品牌最担心的事情还是发生了:建议大家不要一门心思只搞钱不停向你念经去世3年女子出现4针新冠疫苗接种记录;父母给孩子服用兽药致肝衰竭;俄议员建议从中国回购辽宁舰...... | 酷玩日爆受不了Rust 这些问题,我将后端切换到了 Go谷歌:Android 内存安全漏洞比例下降与使用 Rust 相关重大转变!重庆:建议市民非必须不做核酸!广州:奥密克戎毒力非常低,市民按普通感冒来储备药物即可今日最佳:建议专家不要建议。崩溃了!病童医院ICU的孩子一半流感,一半RSV!安省卫生官:建议幼儿戴口罩?!47岁男子路边猥亵未成年少女,网友:建议阉割!写给儿子刘云帆 - 刘年安省首席卫生官:建议重新戴上口罩 住院一直上升Dart 3将成为100%健全的空安全语言接受挑战,创个人连跑记录北大孔庆东:建议取消年夜饭,影响中华民族复兴!硬核观察 #838 安卓的 Rust 代码中发现的内存安全漏洞为零深刻理解 | 以通信方式共享内存,不要以共享内存方式通信深刻理解 | 以通信方式共享内存,不要以共享内存方式通信
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。