打开网易新闻 查看精彩图片

为了防个小偷,不得不把家里一半的房间门焊死,这种令人“智熄”的操作,最近却在使用AMD处理器的云服务商身上上演了。

事情的起因是近期德国一家安全机构发现了一个名为StackWarp的芯片级漏洞,这个漏洞主要影响AMD的Zen系列处理器,导致云计算最核心的“隔离能力”出现了缺口。

什么意思?对于云服务平台而言,作为平台,是无权也无法触碰用户的数据,这就像房东不该进租客的卧室。

但StackWarp漏洞暴露出的问题是,攻击者可以利用硬件设计的缺陷,获得一种非法的“穿墙”能力,直接修改租户正在运行的程序和数据,换句话来说,原本应该是保密的信息,在攻击者面前变得透明且可被篡改。

如此严重的漏洞,必须马上拿个解决方案出来,AMD给的解决方案很直接,既然是同步多线程(SMT)引起的问题,那把同步多线程禁用不就完了。

这一堪称“甜菜”操作背后,直接导致了算力的缩水,同步多线程一旦禁用,处理器的并行处理能力会大幅下降。

对于云服务商而言,原本能支持100个虚拟服务实例的服务器,在执行防御措施后,支撑能力将直接减半,在算力需求激增的当下,这种折损背后的成本有多高,不言而喻。

但在中国市场,海光C86处理器的用户不需要担心这个问题。

因为从最底层的架构设计上,海光全系处理器就对StackWarp漏洞天然免疫,用户无需升级固件,无需禁用超线程,更不需要牺牲任何计算性能,服务器可以保持满负荷运转,业务连续性不受影响。

在由StackWarp漏洞引发的危机背后,不难看出,海光C86架构虽然在应用层保持了对x86生态的兼容,但在底层的安全逻辑和微架构实现上,已经与X86技术路线完成了解耦,走出了一条独立演进的道路。

通过对底层代码的消化与重构,国产芯片厂商在同样的指令集生态下,早已经构建出了完全不同的安全内核。

不同的架构逻辑

海光能够防御StackWarp漏洞,根本原因在于其底层的虚拟化技术与AMD走的X86路线存在本质差异,海光通过自研的CSV3技术,在硬件层面打造了一套全新的防御机制。

要理解为什么海光能防住,首先得搞清楚攻击者是怎么得逞的。

利用StackWarp漏洞展开攻击的主要前提,是攻击者必须强行让虚拟机进入一种“走一步停一步”的状态,在技术上,这叫“单步执行”,只有让虚拟机停下来,攻击者才有机会在间隙中动手脚,修改关键数据。

AMD的架构设计中保留了一个功能,允许主机(也就是云平台管理方)去修改虚拟机的内存映射表(页表),攻击者正是钻了这个空子,通过频繁修改页表,强行制造卡顿,从而实施精准攻击。

而海光C86架构下,这个问题就不存在,因为主机本来就不该碰虚拟机的数据,在海光C86架构下,主机没有修改页表的权限。

海光自研的CSV3技术,锁死了主机对虚拟机页表的修改权,无论主机拥有多高的系统权限,都无法触碰这一核心区域。

由于主机无法篡改页表,攻击者就无法制造出“单步执行”的环境,没有了那个动手的间隙,后续的所有攻击手段自然也就失效了。

从技术代际上看,海光的CSV3技术在功能上对标的是AMD Zen 3架构中的SEV-SNP技术。

对标自然不是照搬,如果技术路线不是自研,而是被动引入上游的新版本,那么上游架构中的每一个设计缺陷都会被同步继承,这在ARM等其他技术体系的迭代中并不鲜见,引入新版本的同时,往往也引入了新的漏洞。

StackWarp攻击的最终靶点是AMD的SEV-SNP技术模块。

由于海光坚持底层自研,其处理器架构中根本不存在SEV-SNP这一模块,攻击者找不到预期的靶点,针对性的攻击手段自然无法生效。

这种“原生免疫”能力,正是海光切断了技术依赖、避免掉入上游研发陷阱的直接结果。

打开网易新闻 查看精彩图片

这种防御能力的差异,源于技术路线的分化。

海光C86架构虽然仍兼容X86生态,但在涉及安全的“信任根”(Root of Trust)层面进行了彻底重构,AMD架构的信任根是PSP(平台安全处理器),而海光在C86架构中,将其替换为自研的HSC(海光安全处理器)。

海光C86处理器内部集成了通用的C86核心和专用的安全处理器。

安全处理器拥有独立的ROM和RAM资源,且具有比通用核心更高的安全权限,上电时,芯片首先执行安全处理器内部固化的ROM代码,这部分代码在芯片生产时写入,无法被外部篡改。

为了配合自研的信任根,海光还重写了安全启动的微码,ROM代码会使用内置的公钥验证加载固件的签名,只有通过验证的固件才能运行。

随后,固件再验证BIOS代码的签名,BIOS再验证操作系统的签名。这种链式验证机制,从第一行代码开始就确保了系统的纯净。

换言之,海光C86在处理虚拟化、内存加密、启动验证等关键任务时,调用的指令序列、微码逻辑以及硬件电路,与X86架构完全不同,正是因为海光在自研安全处理器、重构虚拟化机制等领域多年的研发积淀,海光C86全系处理器才拥有了原生的StackWarp漏洞免疫能力。

对安全的重视,在海光的产品迭代中也在持续体现,海光每一代产品的微架构都在针对新的安全威胁进行调整。

例如,在应对Meltdown(熔断)漏洞时,海光CPU在代码执行过程中会严格检查用户访问权限,一旦权限检查失败,数据访问请求会立即失效,从硬件上免疫了熔断攻击。

针对Spectre(幽灵)漏洞,海光引入了IBPB(间接分支预测屏障)等指令,在进程切换时,系统会调用这些指令清除分支目标缓冲器中的条目,确保恶意代码无法通过诱导预测执行来窃取数据。

海光C86架构的发展,实际上是一个与x86技术路线逐步解耦的过程。

在保持生态兼容的同时,海光已经将安全内核替换为自主可控的方案,这种基于底层重构的差异化,构成了应对未知硬件漏洞时的最大屏障。

算力大基建时代的安全有多重要?

StackWarp事件暴露了传统架构在应对底层硬件漏洞时的局限性。

AMD用户被迫在封堵漏洞和保留性能之间做选择,海光解决这一问题的路径是构建原生的安全体系,通过在处理器内部集成密码技术、可信计算和机密计算三项核心能力,海光构建了一个无需牺牲性能的安全底座。

海光将这三项能力直接固化在处理器内部,形成了三层防御体系。

第一层是原生的密码技术。

在数字化时代,密码是保护数据隐私的第一道防线,传统的服务器解决方案通常依赖两种方式来实现加密,一种是纯软件加密,虽然灵活但会大量占用CPU算力,导致业务性能下降;另一种是外挂加密卡,虽然卸载了计算压力,但增加了硬件采购成本,且受限于PCIe接口的传输带宽,在高并发场景下容易成为瓶颈。

海光选择了一条不同的路径,在处理器内部直接集成密码协处理器(CCP)。

这相当于在主计算单元旁边,内置了一个专门负责加密的引擎,海光在指令集层面进行了深度定制,扩充了对国密SM2、SM3、SM4算法的原生支持。

当系统需要进行数据加密或签名时,不需要经过慢速的外部总线,而是直接在CPU内部高速完成,根据实测数据,这种内置方案在加解密、签名验签等关键指标上,性能表现优于高端商用密码机。

为了让这项硬件能力真正落地,海光还开发了HCT(Hygon Crypto Technology)软件套件。

它向下对接底层的密码协处理器,向上提供OpenSSL、Tongsuo等标准的开源接口。对于上层应用开发者来说,他们不需要修改代码,也不需要关心底层使用的是软加密还是硬加密,就能无感调用海光CPU的加密算力。

除了算得快,更重要的是密钥本身的安全。

海光在处理器内部构建了可信密钥管理模块(TKM),在TKM的架构中,密钥被严格区分为“内部密钥”和“应用密钥”,内部密钥存储在掉电不丢失的非易失性存储中,负责保护其他密钥;应用密钥则在安全处理器内部动态生成。

整个过程中,密钥的明文始终存储在安全处理器内部,实现了“可用不可见”,即使攻击者物理接触到了服务器硬盘,也无法提取出解密数据的密钥。

海光C86-4G处理器也因此通过了国家密码管理局的严格检测,获得了商用密码产品认证证书。

第二层是主动的可信计算。

如果说密码技术是给数据上锁,那么可信计算就是确保整个系统不被篡改,海光支持中国可信计算3.0标准(TPCM),并在此基础上实现了独有的TDM(可信动态度量)技术。

国际通用的TPM标准主要侧重于“静态度量”,即在系统启动的瞬间,检查BIOS、操作系统内核等关键组件的完整性。

这就像安检员只在旅客进站时检查证件,一旦旅客进入候车厅,传统的TPM就失去了监控能力,如果恶意代码在系统运行过程中通过漏洞注入内存,静态防御往往无能为力。

海光的TDM技术填补了这一空白,将防御从“启动时”延伸到了“运行时”。

利用内置的安全处理器,海光CPU可以在操作系统运行的同时,周期性地对内存中的关键目标(如内核代码段、中断向量表、系统调用表)进行扫描和度量。这种扫描独立于操作系统之外,攻击者很难绕过。

TDM还引入了双重授权保护机制,确保只有经过授权的用户才能修改度量策略。

一旦TDM发现内存中的数据与预设的基准值不符,它会立即触发报警,根据用户预设的策略,TDM甚至可以直接阻断系统的运行,防止损失扩大。

这种主动免疫的能力,让海光CPU在金融等高安全场景中获得了广泛应用。

目前,海光是国内首家内置TCM2.0可信计算方案的厂商,其产品在可信计算认证产品名单中的占比已达到50%。

第三层是隔离的机密计算。

针对云计算和虚拟化环境下的数据安全,海光通过CSV技术实现了内存实时加密。这也是防御类似StackWarp漏洞的最后一道防线。

在公共云环境中,多个租户的虚拟机运行在同一台物理服务器上,资源共享带来了数据泄露的风险,CSV技术的核心逻辑是:给每一个虚拟机分配一把独立的加密密钥。

这些密钥由处理器内部的随机数发生器生成,并由安全处理器统一管理。

主机操作系统、虚拟机管理器(Hypervisor)甚至管理员都无法获取这些密钥。当数据离开CPU核心写入内存条时,硬件会自动将其加密为密文;当数据从内存读回CPU时,再自动解密。

整个加解密过程对操作系统完全透明,引入的性能开销控制在1%以下。

这一机制不仅阻断了软件层面的越权访问,也防御了物理层面的攻击,即使攻击者通过冷启动攻击或直接使用探针读取DRAM内存条上的数据,获得的也只是一堆无法破解的乱码。

此外,海光还支持安全加密虚拟机的远程身份认证。

在用户向云端发送敏感数据之前,可以要求服务器生成一份由海光CPU签名的“体检报告”。这份报告包含了当前硬件环境、固件版本的度量值,用户验证通过后,才会建立连接。

海光第三代安全加密虚拟化技术(CSV3)进一步增强了安全性,实现了对虚拟机数据的完整性保护。

主机操作系统无法通过改写虚拟机嵌套页表对虚拟机实施重映射攻击,也无法读取和写入安全虚拟机的密文,这也是海光能够免疫StackWarp漏洞的原因之一。

目前,海光CSV技术已广泛应用于隐私计算领域。

阿里云上线了基于海光CSV的机密虚拟机实例,在隐私计算影响力TOP10企业中,海光与90%的厂商建立了合作,推出了十余款基于海光CPU的一体机产品。海光安全加密虚拟机还支持机密容器,符合容器标准接口规范,能够和Kubernetes等主流管理引擎无缝对接,保护容器内的数据安全。

这三层技术构成了海光C86架构的内生安全体系。

打开网易新闻 查看精彩图片

对于金融、电信、能源等关键行业而言,这种安全性提供了业务运行的确定性。海光C86-4G处理器等产品已通过国家相关部门的高级别安全认证,满足了关键信息基础设施对硬件安全的严苛要求。

此外,海光C86架构在提供安全保障的同时,保持了对x86生态的完整兼容。

原本运行在Intel或AMD服务器上的应用软件,无需修改代码即可迁移到海光平台,并直接获得底层的安全防护。这种“平滑迁移”的能力,极大地降低了国产化替代的成本。

从StackWarp漏洞危机背后不难看出,依赖外部技术路线需要承担不可控的连带风险。

当上游架构存在设计缺陷时,下游用户却需要支付昂贵成本,海光通过对x86架构的消化和再创新,掌握了核心技术的演进权,这种基于底层重构的独立性,让海光在面对波及全球的硬件漏洞时,能够保持系统的安全与性能稳定。

在算力成为基础设施的今天,海光C86架构的独立演进,为中国的数字基础设施建设提供了一个安全、可控且高效的选择。

免责声明:本文观点仅代表作者本人,供参考、交流,不构成任何建议。