微软研究院宣称其“检查C”扩展“让C安全”

微软研究院预先发布了一篇新论文,将在2018年IEEE网络安全发展大会上发表,描述他们在Checked C上的进展,“C语言的扩展,旨在支持空间安全,在Clang和LLVM中实现。” 从“检查C语言:通过扩展使C语言更安全”: 检查C语言的设计以其向后兼容性为重点 ,增量转换,开发人员控制以及启用高性能代码......程序的任何部分都可能包含检查方向并从中受益。这些方向与传统的,未经检查的项目是二进制兼容的,但具有明确的注释和强制边界。注释为已检查区域的代码单元提供有保证的安全性:其中的代码可导致空间安全违规的未经检查的项目或不安全的转换。 已检查的C语言的bounds-safe接口为未经检查的代码提供了检查类型,这对于改进第三方和标准库非常有用。总之,这些功能允许逐步增加遗留程序的安全性,而不是使其成为一个全有或全无的主张。我们将C语言实现为LLVM扩展,具有良好的性能,运行时间和编译开销相对较低。它可以在https://github.com/Microsoft/checkedc免费获得,并继续积极开发。 扩展作为传递给Clang的标志启用,通过添加动态检查引入的平均运行时间开销为8.6%,但在超过一半的基准测试中,开销小于1%。他们还指出,从2012年到2018年,缓冲区溢出是CVE的主要原因。 微软研究院表示,他们现在正在评估Checked C,正式确认其安全保障,并开发了一种半自动重写旧C程序的工具。

  • 发表于:
  • 原文链接http://developers.slashdot.org/story/18/09/08/1919219/microsoft-research-touts-its-checked-c-extension-for-making-c-safe

扫码关注云+社区

领取腾讯云代金券