查看: 1191|回复: 0
收起左侧

类似“幽灵”这样的CPU漏洞. 让基于RISC-V架构的处理器生存

[复制链接]

  离线 

  • TA的每日心情
    慵懒
    2021-7-27 09:25
  • 签到天数: 57 天

    [LV.5]

    发表于 2020-7-15 10:18:15 | 显示全部楼层 |阅读模式

    有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    鱼和熊掌不可兼得,很多时候我们需要在便利性和安全性方面做出妥协。有的时候我们能够清楚地进行选择,可以直接表示希望这个事物能达到多大程度的安全。但是在其它时候,我们却是在未知的情况下做出这些选择的,我们并不知道为了得到这些便利性究竟需要承担哪些风险。如果你的自行车没有上锁,你会清清楚楚地知道它可能会被偷,这点毫无争议。但是,我们都知道当得知信用卡被盗刷时的心情,我们会莫名其妙,不知道它是怎么被盗刷的,不知道为什么这种行为会这么频繁。除此之外,我们还需要谨记在心的是,黑客和坏蛋们一直在孜孜不倦地寻找突破安全漏洞的机会,这就意味着,曾经安全的事物完全有可能在一夜之间变得不安全了。

    你还记得吗?曾经有一段时期,我们可以轻易地使用调试器查找到执行密码检查的代码,然后轻松地绕开它。现在我们已经对这些关键代码划定了特定的地址空间,也提供了更好的加密算法。现在的系统漏洞大都是由“白帽子黑客”发现的,他们有着良好的职业道德,通常会在公众知道这些漏洞之前把它们提交给系统供应商,让他们尽快修复。

    国外芯片技术交流-类似“幽灵”这样的CPU漏洞. 让基于RISC-V架构的处理器生存risc-v单片机中文社区(1)

    但是,去年有一个新的名为“幽灵”的严重安全漏洞被曝光在大众的视野之下,它也促使每一个从业者开始停下来思考继续前行的方向。像大多数人一样,你基本上也会购买一台搭载 CISC 指令集通用处理器的计算机,用它打游戏或者进行财务管理。在过去几十年中,处理器供应商一直蒙眼狂奔,大大提高了计算机中使用的通用处理器的性能,这其中包括大名鼎鼎的英特尔、AMD 和 ARM 处理器厂商。

    随着处理器逐渐逼近其时钟上限 4GHz,CPU 设计人员开始寻求其它提高性能的方法。一个研究成熟、可供优化的领域是压缩内存读取时的等待时间,CPU 读取实际内存物理地址时常常会消耗数百个 CPU 周期。一个广泛采用的解决方案是分支预测,其中,CPU 使用先前的执行配置文件来确定分支决策的可能结果,处理器首先保存分支预测前的状态,然后继续执行最可能的代码路径,如果预测错误,处理器将返回到已保存的状态。通过正确的分支恢复,似乎可以保证足够的安全 ......

    不幸的是,即使恢复了内存数据和处理器的寄存器,仍然存在对基于预测执行的代码的潜在跟踪路径 - 因为内存缓存可能已根据分支预测提前进行了读取和更改。黑客可以在下游通过多种方式使用已经被缓存的内容来发现被认为是安全的内存数据。其中一个例子是,如果预测执行的分支要执行内存边界检查,黑客可以进行训练导致处理器通过对边界的检查,但是实际上这可能会涉及到非法内存访问。执行分支预测的代码会将受保护的内存放入缓存中,稍后黑客可以通过其他代码来检索它。实际上,还有许多其他方法可以利用预测分支执行的恶意代码,得到缓存数据。有些方法甚至在浏览器中的 Java 运行时环境中工作。

    与软件漏洞不同的是,幽灵漏洞依赖的是通用处理器的基本行为。因此,当这个漏洞被公开时,处理器供应商无计可施,事实上我们将不得不忍受它的存在,或许有时能缓解有时严重一些。最安全的解决方法是使用 LFENCE 指令禁用预测代码执行,但这会导致 CPU 性能大幅下降。一位安全研究人员估计,为了禁用 Office 套件中的分支预测,需要添加 2400 万条 LFENCE 指令。

    国外芯片技术交流-类似“幽灵”这样的CPU漏洞. 让基于RISC-V架构的处理器生存risc-v单片机中文社区(2)

    现在看来,所有使用处理器的新应用程序基本上都具有更高的安全性要求。面对这种情况,是时候开始为不同类型的任务适配不同类型的处理器了,可以在关键作业上使用安全处理器,在不太关键的任务上使用更高性能的处理器。业界已经推动并普及了异构处理器一段时间,不过之前主要是由性能需求驱动的。现在,对专门设计的安全处理器的需求日益增长。这些可能是基于 RISC 指令集的,它们不易受到预测执行攻击的影响。此外,它们还可以拥有自己直连的内存和安全 IP、加速器,这些部件都是系统其他任何部分都无法访问的。

    Rambus 在他们发布的白皮书“CryptoManager 信任根”中概述了一个这样的解决方案。方案从专用于安全功能的 32 位 RISC-V 处理器开始,集成了许多基本组件和用于确保安全性的适当架构。因此,它可以专门用于安全地运行敏感代码。此外,它还配有专用的 SRAM 和 ROM 存储器,还有 AES、安全 SHA-2 哈希核心和非对称公钥引擎。

    Rambus 的 CryptoManager 信任根(CMRT)还包括一个真正的随机数生成器,一个用于从根密钥导出短暂密钥的密钥派生核(KDC)。为了检测篡改,它还有一个可以检测故障和超频的金丝雀核心。Rambus 的白皮书详细介绍了 CMRT 全面的抗攻击性。此外,它还讨论了为需要安全运行的敏感代码创建孤岛的技术。实际上,可以创建多个信任根,以使不同应用程序的资源、密钥和安全资产彼此分离。 CRT 核心可以作为完整的安全解决方案添加到 SoC 中,以满足许多垂直市场的需求,比如物联网、汽车、网络 / 连接和传感器。

    Rambus 还描述了开发工具包以及可提供可交付成果的其配置基础架构。
    本篇完





    上一篇:Andes Custom Extension™ 让高效RISC-V处理器进一步加强功能
    下一篇:RISC-V带给中国CPU和芯片行业发展的历史性机遇
    RISCV作者优文
    相信自已,未来是自已创造的。
    回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    关闭

    RISC-V单片机中文网上一条 /2 下一条



    版权及免责声明|RISC-V单片机中文网 |网站地图

    GMT+8, 2024-3-28 18:25 , Processed in 0.394546 second(s), 41 queries .

    快速回复 返回顶部 返回列表