0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

微软与LLVM、Rust达成合作,将CFG支持添加到编译器

如意 来源:开源中国 作者:白开水不加糖 2020-08-20 11:44 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

微软方面宣布,该公司已与 LLVM 和 Rust 开发团队达成合作,将对 Windows Control Flow Guard(CFG)平台安全功能的支持添加到了 Clang 和 Rustc 编译器中。此前,CFG 仅适用于使用 Microsoft Visual C ++ 编译的 C/C ++ 代码。

CFG 是微软自 Windows 8.1 版本开始添加的一项强大的安全功能,目前已在 Windows 10 中被广泛使用 。该功能可以保护应用程序代码的执行流,以防止恶意代码(例如内存错误的结果)劫持本机“控制流”并使应用程序执行有害的操作。CFG 是对其他漏洞利用缓解措施的补充,例如地址空间布局随机化(Address Space Layout Randomization,ASLR)和数据执行保护(Data Execution Prevention,DEP)。

目前,CFG 功能已在 LLVM 10.0 和 Rust 1.47(当前为 Nightly 版本)两个版本中可用。

“LLVM 10.0 现在支持 CFG。我们对 CFG 的实现完全包含在核心库中,这使得它可以在基于 LLVM 的任何编译器中重用–前端编译器只需要设置正确的 flags 即可。”

“CFG 在 Rust 1.47(当前为 Nightly 版本)中可用。要启用 CFG,只需添加 -C control-flow-guard flag 即可。”

值得一提的是,微软方面透露,将 CFG 支持扩展到 LLVM/Clang的主要驱动器是 Chromium,而 Chromium 代码库是使用 Clang 编译的。“因此,Chromium 团队正在努力在 Windows 版本中启用 CFG,这是在 Google Chrome 和 Microsoft Edge 中采用 CFG 的第一步。”

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微软
    +关注

    关注

    4

    文章

    6766

    浏览量

    108178
  • 编译器
    +关注

    关注

    1

    文章

    1673

    浏览量

    52110
  • CFG
    CFG
    +关注

    关注

    0

    文章

    10

    浏览量

    10169
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    i.MX 8M Plus 上如何这些自定义分辨率添加到内核或设备树的指导?

    您好,我在i.MX 8M Plus我需要在3840x726@60hz and 3840x1080@60hz. 这些在 Weston 中不可用,所以我相信我需要修改内核。谁能提供有关如何这些自定义分辨率添加到内核或设备树的指导? 谢谢!
    发表于 05-18 08:16

    docker-ce 添加到 yocto LLDP 5.15-71 中,显示错误如何解决?

    我们正在尝试 docker-ce 添加到 yocto LLDP 5.15-71 中,但它显示以下错误: 您对ubuntu和yocto软件包冲突问题有任何解决方案吗? bitbake
    发表于 04-16 06:34

    Perforce 静态分析现已正式支持 Rust语言!

    您是否正计划通过 Rust 编程来提升内存安全性,却又担心它无法覆盖所有的安全漏洞?Perforce QAC 和 Klocwork 现在已支持分析 Rust 代码,填补了开源代码检查工具在质量和治理工具链方面的空白。
    的头像 发表于 04-08 15:38 544次阅读
    Perforce 静态分析现已正式<b class='flag-5'>支持</b> <b class='flag-5'>Rust</b>语言!

    性能突破 | SpacemiT-X60 在 LLVM 编译器上实现 16% 显著提升

    2025年10月,在北美RISC-V峰会上,Igalia编译器工程师Mikhail发表专题演讲《Unlocking15%MorePerformance
    的头像 发表于 11-21 18:04 9246次阅读
    性能突破 | SpacemiT-X60 在 <b class='flag-5'>LLVM</b> <b class='flag-5'>编译器</b>上实现 16% 显著提升

    开源鸿蒙技术大会2025丨编译器与编程语言分论坛:语言驱动系统创新,编译赋能生态繁荣

    在万物智联的时代背景下,操作系统底层能力的构建离不开编程语言与编译器的关键支撑。作为开源鸿蒙生态的核心技术,语言设计与编译器、虚拟机实现的进步直接关系到开发效率、运行性能与系统安全。本次分论坛聚焦
    的头像 发表于 11-20 17:24 1291次阅读
    开源鸿蒙技术大会2025丨<b class='flag-5'>编译器</b>与编程语言分论坛:语言驱动系统创新,<b class='flag-5'>编译</b>赋能生态繁荣

    如何“同步scons 配置至项目”功能添加到编译步骤中?

    我想将rt-thread studio的“同步scons配置至项目”功能添加到编译前步骤中 但是我不知道这个功能执行了什么指令,在构建前步骤中应该输入什么指令,用”scons”命令无法实现
    发表于 09-22 07:39

    兆松科技ZCC-FuSa编译器全面支持晶心科技车规级RISC-V处理IP核

    2025 年 8 月 26 日,兆松科技宣布其车规编译器 ZCC-FuSa 全面支持 Andes 晶心科技各系列车规级的 AndesCore RISC-V CPU IP (D23-SE
    的头像 发表于 08-27 16:50 1629次阅读
    兆松科技ZCC-FuSa<b class='flag-5'>编译器</b>全面<b class='flag-5'>支持</b>晶心科技车规级RISC-V处理<b class='flag-5'>器</b>IP核

    求助,关于NanoEdge AI Studio生成的库交叉编译器版本疑问求解

    20231009\", 那么问题来了,怎么在NanoEdge AI Studio设定交叉编译器呢,比如设置为armcc、armclang、iccram,因为我需要将库加到keil或者iar工程里面。 看样子这个软件生成的库是arm-gcc
    发表于 08-08 07:25

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    老师的推荐,很快我们就被其极高的安全特性,强大的包管理系统和编译器以及丰富的社区支持所折服。然后我们在调研时注意到了RT-Thread。它有着经典的操作系统架构,
    的头像 发表于 08-02 11:03 3842次阅读
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全内核 <b class='flag-5'>RusT</b>-Thread 的诞生

    Aurix Development Studio 中是否有允许在 SCR 端添加调试编译器选项的功能?

    ELF 文件中的调试信息,其中没有调试符号,并且我无法调试 SCR 代码。Aurix Development Studio 中是否有允许在 SCR 端添加调试编译器选项的功能?
    发表于 07-21 06:00

    边缘设备AI部署:编译器如何实现轻量化与高性能?

    电子发烧友网综合报道 AI编译器是专门为人工智能(AI)和机器学习(ML)模型设计的编译器,其核心目标是高级的AI模型描述(如计算图、神经网络结构)转换为特定硬件平台(如CPU、GPU、FPGA
    的头像 发表于 07-06 05:49 7064次阅读

    请问OpenVINO™ 是否支持 Rust 绑定?

    无法确定OpenVINO™是否支持 Rust 绑定。
    发表于 06-25 07:45

    兆松科技ZCC编译器全面支持芯来科技NA系列处理

    近日,兆松科技(武汉)有限公司(以下简称“兆松科技”)宣布正式发布高性能RISC-V编译器ZCC 4.0.0版本。
    的头像 发表于 06-11 09:56 2113次阅读

    RISC-V架构下的编译器自动向量化

    进迭时空专注于研发基于RISC-V的高性能新AICPU,对于充分发挥CPU核的性能而言,编译器是不可或缺的一环,而在AI时代,毫无疑问向量算力发挥越来越重要的作用。进迭时空非常重视RISC-V
    的头像 发表于 06-06 16:59 1583次阅读
    RISC-V架构下的<b class='flag-5'>编译器</b>自动向量化

    ArkUI-X添加到现有Android项目中

    aar包 在应用工程初始化ArkUI-X 通过Android studio 创建一个应用工程,将我们上述的aar包添加到工程目录下的libs目录中 Application部分 继承调用
    发表于 06-04 22:35