Spectre漏洞 v2 版本再现,影响英特尔 CPU + Linux 组合设备

news2024/9/23 1:36:21

1712806069_661758b5de47ebde47f8d.png!small?1712806071141

近日,网络安全研究人员披露了针对英特尔系统上 Linux 内核的首个原生 Spectre v2 漏洞,该漏洞是2018 年曝出的严重处理器“幽灵”(Spectre)漏洞 v2 衍生版本,利用该漏洞可以从内存中读取敏感数据,主要影响英特尔处理器 + Linux 发行版组合设备。

阿姆斯特丹自由大学系统与网络安全小组(VUSec)的研究人员在一份新的研究报告中提到,该漏洞被称为 "本地分支历史注入漏洞”,被追踪为 CVE-2024-2201。此漏洞可以绕过现有的 Spectre v2/BHI 缓解措施,以 3.5 kB/sec 的速度泄漏任意内核内存。

现阶段很难有效修复 Spectre v2 漏洞,这和处理器现有的推测执行(Speculative execution)机制有关。

推测执行是一种性能优化技术,现代处理器会猜测下一步将执行哪些指令,并提前执行从而加快响应速度。

1712806015_6617587f5dc15536d4899.png!small?1712806016948

VUSec 于 2022 年 3 月首次披露了 BHI,并将其描述为一种可以绕过英特尔、AMD 和 Arm 现代处理器中 Spectre v2 保护的技术。虽然该攻击利用了扩展的伯克利数据包过滤器(eBPF),但英特尔为解决该问题提出了禁用 Linux 非特权 eBPF的建议。

英特尔公司表示,特权管理运行时可以配置为允许非特权用户在特权域中生成和执行代码--例如Linux的'非特权eBPF',这大大增加了瞬时执行攻击的风险,即使存在针对模式内分支目标注入的防御措施。

可以对内核进行配置,在默认情况下拒绝访问非特权 eBPF,同时仍允许管理员在需要时在运行时启用它"。原生 BHI 通过证明 BHI 无需 eBPF 即可实现,从而抵消了这一反制措施。它可能会影响所有易受 BHI 影响的英特尔系统。

访问 CPU 资源的攻击者可以通过安装在机器上的恶意软件影响推测执行路径,从而提取与不同进程相关的敏感数据。

CERT 协调中心(CERT/CC)在一份公告中提到:禁用特权 eBPF 和启用(Fine)IBT 的现有缓解技术目前不足以阻止针对内核/管理程序的 BHI 攻击。未经认证的攻击者可以利用这个漏洞,通过投机性跳转到所选的小工具,从 CPU 泄漏特权内存。

Spectre v2 漏洞利用

经证实,该漏洞已经影响到了 Illumos、英特尔、红帽、SUSE Linux、Triton Data Center 和 Xen等多个系统。

据悉,该漏洞是 Spectre v1 的一个变种,能够通过利用推测执行和竞争条件的组合泄漏 CPU 架构的数据。

苏黎世联邦理工学院(ETH Zurich)的最新研究披露了一系列被称为 "Ahoi攻击 "的攻击,这些攻击可用于破坏基于硬件的可信执行环境(TEE)和破解机密虚拟机(CVM),如AMD安全加密虚拟化-安全嵌套分页(SEV-SNP)和英特尔信任域扩展(TDX)。

这些代号为 Heckler 和 WeSee 的攻击利用恶意中断破坏CVM的完整性,允许威胁者远程登录并获得高级访问权限,以及执行任意读、写和代码注入以禁用防火墙规则和打开root shell。

研究人员表示:Ahoi 攻击是攻击者通过利用管理程序向受害者的vCPU注入恶意中断,并诱使其执行中断处理程序而实现的。这些中断处理程序可以产生全局效应,比如改变应用程序中的寄存器状态等等,攻击者可以触发这些中断处理程序,从而成功入侵受害者的CVM。

目前,英特尔更新了针对 Spectre v2 的缓解建议,现在建议禁用非特权扩展伯克利数据包过滤器(eBPF)功能、启用增强型间接分支限制猜测(eIBRS)和启用监控模式执行保护(SMEP)。

参考来源:

Researchers Uncover First Native Spectre v2 Exploit Against Linux Kernel 

InSpectre Gadget - vusec

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1596557.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

笔记84:关于递归法的一些感悟

题目1:二叉树的前序遍历 链接:. - 力扣(LeetCode) /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(…

C# 关于进程回收管理的一款工具设计与分享

目录 设计初衷 开发运行环境 Craneoffice ProcessGC 运行主界面 管理任务与策略 其它设置 移动存储设备管理 核心代码-计时器监控 小结 设计初衷 在使用 COM 模式操作 OFFICE 组件的开发过程中,当操作完相关文档后,在某些情况下仍然无法释放掉…

2024.4.19 Python爬虫复习day07 可视化3

综合案例 需求: 已知2020年疫情数据,都是json数据,需要从文件中读出,进行处理和分析,最终实现数据可视化折线图 相关知识点: json json简介: 本质是一个特定格式的字符串 举例: [{},{},{}] 或者 {}python中json包: import jsonpython数据转为json数据: 变量接收json…

Unity类银河恶魔城学习记录12-17 p139 In game UI源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili UI.cs using UnityEngine;public class UI : MonoBehaviour {[SerializeFie…

kworker(kworker/u2:1,kworker/0:13,kworker/0:1H) 工作队列的命名

1、概述 工作队列是除软中断和tasklet以外最常用的下半部机制之一。工作队列的基本原理是把work(需要推迟执行的函数)交由一个内核线程来异步执行。关于工作队列的具体使用请读者参考其他资料,本文不再概述。 在创建工作队列时,可以通过flag参数指定创建的工作队列…

(四)C++自制植物大战僵尸游戏启动流程

植物大战僵尸游戏开发教程专栏地址http://t.csdnimg.cn/ErelL 一、启动方式 鼠标左键单机VS2022上方工具栏中绿色三角按钮(本地Windows调试器)进行项目启动。第一次启动项目需要编译项目中所有代码文件,编译生成需要一定的时间。不同性能的电…

AVB简介(二): gPTP简介

AVB简介(二): gPTP简介 一、时间同步要解决的问题二、gPTP的主要思想2.1 体系结构2.2 主时钟选取2.3 绝对时间同步2.4 相对时间同步 三、影响校时精度的因素3.1 传输时延不对称3.2 驻留时间3.3 时间戳采样点3.4 时钟频率3.5 传输路径延时测量方式3.6 时钟…

idea运行Tomcat,控制台日志的中文乱码

一 版本 win10,idea2022,jdk18,tomcat9 二 问题描述 在idea上可以运行Tomcat。服务器启动后,可以正常访问本地的html文件。但是控制台的Tomcat日志出现了乱码:server与Tomcat Catlina Log两处。 三 无效的解决之道 1 idea的Help选项Edit …

Spring ORM

Spring Data JPA 作为Spring Data 中对于关系型数据库支持的一种框架技术,属于 ORM 的一种,通过得当的使用,可以大大简化开发过程中对于数据操作的复杂度。 Java里面写的一段DB操作逻辑,是如何一步步被传递到 DB 中执行了的呢?为什么 Java 里面可以去对接不同产商的 DB 产…

ExtendSim花生酱加工厂模型

该模型展示了ExtendSim可靠性模块与ExtendeSim离散速率技术相结合的协同作用。 在花生酱加工厂的最初阶段,花生经过烘烤和冷却。冷却后的花生经过热烫或水烫去外皮。这些经过漂白的花生进入过程的混合部分,在研磨机中用盐、葡萄糖和氢化油稳定剂将其粉碎…

MySQL排序你真的掌握了吗?5个问题考考你

测试sql数据 CREATE TABLE student (id int NOT NULL AUTO_INCREMENT,name varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,age int DEFAULT NULL,money int DEFAULT NULL,PRIMARY KEY (id) USING BTREE,KEY index_name (age) ); INSERT INTO st…

【Linux】线程的控制

目录 POSIX线程库 常用的POSIX线程库接口声明: 注意事项 创建一个进程 pthread_create函数 参数 返回值 使用示例 线程ID和进程地址空间布局 线程ID 进程地址空间布局 示例图 获取一个进程的线程ID 函数原型 返回值 使用示例 注意事项 线程终止 p…

SpringBoot项目整合ACTable实现实体类快速生产数据库表

1.安装 ACTable依赖 <dependency> <groupId>com.gitee.sunchenbin.mybatis.actable</groupId> <artifactId>mybatis-enhance-actable</artifactId> <version>1.5.0.RELEASE</version> </dependency> 使用mybatis…

如何做一个springboot的starter类型的SDK

关键的东西 首先我们是一个starter类型的SDK&#xff0c;为了给调用者使用&#xff0c;其中有一些Bean我们会放到SDK中&#xff0c;并且这些Bean能够注入到调用者的Spring容器中。 最关键的spring.factories文件 这个文件所在位置如下图所示&#xff0c;该文件通过写入一下代…

自定义vue-cli 实现预设模板项目

模板结构 主要包括四个部分&#xff1a; preset.jsonprompts.jsgenerator/index.jstemplate/ 项目最终结构 preset.json preset.json 中是一个包含创建新项目所需预定义选项和插件的 JSON 对象&#xff0c;让用户无需在命令提示中选择它们&#xff0c;简称预设&#xff1b;…

文献速递:深度学习肝脏肿瘤诊断---基于深度学习的肝细胞结节性病变在整片组织病理图像上的分类

Title 题目 Deep Learning-Based Classification of Hepatocellular Nodular Lesions on Whole-Slide Histopathologic Images 基于深度学习的肝细胞结节性病变在整片组织病理图像上的分类 Background 背景 Hepatocellular nodular lesions (HNLs) constitute a heterogen…

Offer必备算法26_BFS解决最短路_四道力扣题(由易到难)

目录 ①力扣1926. 迷宫中离入口最近的出口 解析代码 ②力扣433. 最小基因变化 解析代码 ③力扣127. 单词接龙 解析代码 ④力扣675. 为高尔夫比赛砍树 解析代码 本篇完。 ①力扣1926. 迷宫中离入口最近的出口 1926. 迷宫中离入口最近的出口 难度 中等 给你一个 m x …

SpringBoot学习(二)WEB开发

文章目录 WEB开发WebMvcAutoConfiguration原理生效条件效果WebMvcConfigurer接口静态资源源码规则EnableWebMvcConfiguration规则容器中WebMvcConfigurer配置底层行为 Web场景自动配置默认效果 静态资源默认规则静态资源映射静态资源缓存欢迎页Favion 自定义静态资源规则配置方…

PINet车道线检测+YOLOv8视频目标检测

前言&#xff1a; 本文主要目的是实现在PINet车道线检测的代码中嵌入YOLOv8的目标检测模块&#xff0c;具体效果如图所示&#xff1a; 在学习和使用YOLOv8进行目标检测时&#xff0c;感觉可以和最近研究的车道线检测项目结合起来&#xff0c;形成一套如上图所示的视频效…

2024/4/14周报

文章目录 摘要Abstract文献阅读题目创新点CROSSFORMER架构跨尺度嵌入层&#xff08;CEL&#xff09;CROSSFORMER BLOCK长短距离注意&#xff08;LSDA&#xff09;动态位置偏置&#xff08;DPB&#xff09; 实验 深度学习CrossFormer背景维度分段嵌入&#xff08;DSW&#xff09…