当前位置: 首页 > news >正文

SD Express 卡漏洞导致笔记本电脑和游戏机遭受内存攻击

图片

Positive Technologies 最近发布的一份报告揭示了一个名为 DaMAgeCard 的新漏洞,攻击者可以利用该漏洞利用 SD Express 内存卡直接访问系统内存。

该漏洞利用了 SD Express 中引入的直接内存访问 (DMA) 功能来加速数据传输速度,但也为对支持该标准的设备进行复杂的攻击打开了大门。

研究人员演示了经过修改的 SD Express 卡如何绕过 IOMMU 等系统保护措施,对游戏机、笔记本电脑和其他高速媒体设备构成了重大威胁。

了解 DaMAgeCard

由嵌入式系统研究人员领导的Positive Technologies 公司在对 SD Express 进行例行调查时发现了该漏洞。

新招数,老把戏:DaMAgeCard 攻击直接通过 SD 卡读卡器攻击内存

https://swarm.ptsecurity.com/new-dog-old-tricks-damagecard-attack-targets-memory-directly-thru-sd-card-reader/

图片

该标准于 2018 年首次推出,随着采用基于 PCIe 的数据传输功能以实现更快速度的设备而受到关注。

尽管 SD Express 在高速应用方面具有潜力,但该团队发现业界在保护其 DMA 功能方面存在差距。

通过自定义硬件修改,研究人员演示了在 MSI 游戏笔记本电脑和 AYANEO Air Plus 手持控制台等系统上成功的内存访问,揭示了在 SDIO(传统 SD 协议)和 PCIe 模式之间转换的设备缺乏足够的安全措施。

图片

主机与 SD 卡在协议层面的数据交换

SD Express由 SD 协会设计,将传统的 SD 技术与 PCIe 和 NVMe 协议相结合,实现高达 985 MB/s 的传输速率。

这种性能提升对于管理大型媒体文件至关重要,它引入了 PCIe 总线控制,该功能允许 SD 卡直接访问系统内存。

虽然该实现旨在绕过 CPU 瓶颈来提高速度,但未能充分限制未经授权的内存访问。

Realtek RTS5261 主机控制器和类似组件允许 SD Express 卡在连接后作为 PCIe NVMe 设备运行。

这种转变正是 DaMAgeCard 的优势所在:攻击者可以利用实施不当的控件来操纵设备并访问敏感内存区域。

图片

通用适配器展示头位配置

受影响的系统和风险

SD Express 的采用仍然相对有限,但正在增长,高端笔记本电脑、游戏机和媒体设备都采用了该标准。

可能受影响的系统如下所列:

  • 1. AYANEO Air Plus 等游戏机缺乏 IOMMU 保护,允许未经过滤的内存访问。
  • 2. 笔记本电脑,甚至包括像 MSI 游戏笔记本电脑这样带有 IOMMU 的高端系统,都可能被操纵,以允许通过修改后的 SD Express 卡进行未经授权的 DMA 访问。
  • 3. 基于 PCIe 的外部读取器。
  • 4. 摄影设备、摄像机和其他需要高速数据处理的嵌入式系统,其中 SD Express 是首选标准。

图片

带有 Pi Pico 板载设置的 SD Express 适配器

为了防范 DaMAgeCard 和类似的基于DMA 的攻击,Positive Technologies 建议采取以下措施:

  • 1. 确保 IOMMU 在所有支持 PCIe 的设备上处于活动状态。
  • 2. 配置系统以限制仅对受信任的设备进行直接内存访问。
  • 3. 应用最新的固件更新,以便强制 SDIO 和 PCIe 模式之间的安全转换,或在授予 DMA 权限之前通过加密签名验证 SD Express 卡。
  • 4. 如果不需要,请禁用热插拔以防止未经授权的设备连接。
  • 5. 避免在敏感系统中使用不熟悉的 SD 卡或外部读取器。
  • 6. 定期检查设备是否被篡改,特别是在共享环境中。

DaMAgeCard 漏洞凸显了在 SD Express 等现代外设标准中平衡性能与安全性的挑战。随着采用率的提高,设备制造商必须优先实施针对基于 DMA 的威胁的强大保护措施。

在此之前,用户应保持警惕,更新系统并限制接触未经验证的设备。

相关文章:

SD Express 卡漏洞导致笔记本电脑和游戏机遭受内存攻击

Positive Technologies 最近发布的一份报告揭示了一个名为 DaMAgeCard 的新漏洞,攻击者可以利用该漏洞利用 SD Express 内存卡直接访问系统内存。 该漏洞利用了 SD Express 中引入的直接内存访问 (DMA) 功能来加速数据传输速度,但也为对支持该标准的设备…...

前端node环境安装:nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置)

需求:在做前端开发的时候,有的时候 这个项目需要 node 14 那个项目需要 node 16,我们也不能卸载 安装 。这岂不是很麻烦。这个时候 就需要 一个工具 来管理我们的 node 版本和 npm 版本。 下面就分享一个 nvm 工具 用来管理 node 版本。 这个…...

java之集合(详细-Map,Set,List)

1集合体系概述 1.1集合的概念 集合是一种容器,用来装数据的,类似于数组,但集合的大小可变,开发中也非常常用。 1.2集合分类 集合分为单列集合和多列集合 Collection代表单列集合,每个元素(数据&#xff…...

常见LeetCode-Saw200

用来记录需要知道见过的题型: LeetCode2-两数相加 说明:以链表的形势给了你每个位的数字,而且是逆序,直接从开头(个位)遍历相加。带上进位即可。有一个为空就直接计算另一个和进位。 LeetCode-3.无重复字符…...

Unity 制作一个视频播放器(打包后,可在外部编辑并放置新的视频)

效果展示: 在这里,我把视频名称(Json)和对应的视频资源都放在了StreamingAssets文件夹下,以便于打包后,客户还可以自己在外部增加、删除、修改对应的视频资料。 如有需要,请联细抠抠。...

MySQL-SQL语句

文章目录 一. SQL语句介绍二. SQL语句分类1. 数据定义语言:简称DDL(Data Definition Language)2. 数据操作语言:简称DML(Data Manipulation Language)3. 数据查询语言:简称DQL(Data Query Language)4. 数据控制语言:简称DCL(Data …...

腾讯微信大数据面试题及参考答案

DNS 协议是否使用 UDP? DNS(Domain Name System)协议主要使用 UDP(User Datagram Protocol),但也会使用 TCP(Transmission Control Protocol)。 UDP 是一种无连接的传输协议,它的特点是简单、高效。DNS 在进行域名解析时,大部分情况下使用 UDP。因为 UDP 的开销小,对…...

Python跳动的爱心

系列文章 序号直达链接表白系列1Python制作一个无法拒绝的表白界面2Python满屏飘字表白代码3Python无限弹窗满屏表白代码4Python李峋同款可写字版跳动的爱心5Python流星雨代码6Python漂浮爱心代码7Python爱心光波代码8Python普通的玫瑰花代码9Python炫酷的玫瑰花代码10Python多…...

计算机启动过程 | Linux 启动流程

注:本文为“计算机启动、 Linux 启动”相关文章合辑。 替换引文部分不清晰的图。 探索计算机的启动过程 Aleksandr Goncharov 2023/04/21 很多人对计算机的启动方式很感兴趣。只要设备开启,这就是魔法开始和持续的地方。在本文中,我们将概…...

反射简单介绍

反射就是从类里拿东西 有的人可能会想为什么不能用io流,从上往下一行一行的读也能获取类中的信息,为什么要用反射呢? 假如我们io流,从左到右一行一行的读取数据,如果碰到局部变量和成员变量同名,怎么区分&a…...

工具篇--GitHub Desktop 使用

文章目录 前言一、GitHub Desktop 的使用:1.1 通过官网下载GitHub Desktop和安装:1.2 安装和使用:1.2.1 填充自己的标识:1.2.3 克隆项目:1.2.4 git 常用忽略项配置: 二、代码的更新和提交:2.1 代…...

单臂路由配置

知识点 单臂路由指在路由器上的一个接口配置子接口(逻辑接口)来实现不同vlan间通信 路由器上的每个物理接口都可以配置多个子接口(逻辑接口) 公司的财务部、技术部和业务部有多台计算机,它们使用一台二层交换机进行互…...

河工oj第七周补题题解2024

A.GO LecturesⅠ—— Victory GO LecturesⅠ—— Victory - 问题 - 软件学院OJ 代码 统计 #include<bits/stdc.h> using namespace std;double b, w;int main() {for(int i 1; i < 19; i ) {for(int j 1; j < 19; j ) {char ch; cin >> ch;if(ch B) b …...

卷积的数学原理与作用

一、一维卷积 &#xff08;一&#xff09;定义 数学定义 给定一个输入序列 x [ x 1 , x 2 , ⋯ , x n ] x [x_1,x_2,\cdots,x_n] x[x1​,x2​,⋯,xn​] 和一个卷积核&#xff08;滤波器&#xff09; k [ k 1 , k 2 , ⋯ , k m ] k [k_1,k_2,\cdots,k_m] k[k1​,k2​,⋯,…...

路由介绍.

RIB和FIB Routing Information Base&#xff08;RIB&#xff09;&#xff0c;即路由信息库&#xff0c;是存储在路由器或联网计算机中的一个电子表格或类数据库&#xff0c;它保存着指向特定网络地址的路径信息&#xff0c;包括路径的路由度量值。RIB的主要目标是实现路由协议…...

CTFshow-命令执行(Web29-40)

CTFshow-命令执行(Web29-40) CTFWeb-命令执行漏洞过滤的绕过姿势_绕过空格过滤-CSDN博客 总结rce&#xff08;远程代码执行各种sao姿势&#xff09;绕过bypass_远程命令执行绕过-CSDN博客 对比两者的源代码&#xff0c;我们发现&#xff0c;cat指令把flag.php的内容导出后依…...

MySQL锁的类型有哪些

目录 共享锁(share lock)&#xff1a; 排他锁(exclusivelock)&#xff1a; 表锁(table lock)&#xff1a; 行锁&#xff1a; 记录锁(Record lock)&#xff1a; 页锁&#xff1a; 间隙锁&#xff1a; 基于锁的属性分类&#xff1a;共享锁&#xff0c;排他锁。 基于锁的粒…...

基于 JNI + Rust 实现一种高性能 Excel 导出方案(下篇)

衡量一个人是否幸福&#xff0c;不应看他有多少高兴的事&#xff0c;而应看他是否为小事烦扰。只有幸福的人&#xff0c;才会把无关痛痒的小事挂心上。那些真正经历巨大灾难和深重痛苦的人&#xff0c;根本无暇顾及这些小事的。因此人们往往在失去幸福之后&#xff0c;才会发现…...

关于Python程序消费Kafka消息不稳定问题的处理方法

在使用Python程序消费Kafka消息的过程中&#xff0c;有时会遇到各种不稳定的情况&#xff0c;如自动提交偏移量无效、CommitFailedError错误等。这些问题不仅影响了数据处理的可靠性&#xff0c;还可能导致重复消费或丢失消息。本文将针对这两个常见问题提供详细的解决方案和最…...

【OpenCV】Canny边缘检测

理论 Canny 边缘检测是一种流行的边缘检测算法。它是由 John F. Canny 在 1986 年提出。 这是一个多阶段算法&#xff0c;我们将介绍算法的每一个步骤。 降噪 由于边缘检测易受图像中的噪声影响&#xff0c;因此第一步是使用 5x5 高斯滤波器去除图像中的噪声。我们在前面的章…...

DeepSeek 服务故障,稳定性挑战待解

3 月 29 日晚至 30 日上午&#xff0c;DeepSeek 网页和 App 连崩 10 多个小时。这已不是其首次出问题&#xff0c;随着可能发布的 DeepSeek - V4&#xff0c;系统稳定性成梁文锋亟待解决的难题。事故回顾3 月 29 日 21:35&#xff0c;DeepSeek 网页/APP 服务异常&#xff0c;23…...

FFCreator 10个实用技巧:轻松掌握视频制作的核心功能

FFCreator 10个实用技巧&#xff1a;轻松掌握视频制作的核心功能 【免费下载链接】FFCreator 一个基于node.js的高速视频制作库 A fast video processing library based on node.js 项目地址: https://gitcode.com/gh_mirrors/ff/FFCreator FFCreator是一个基于Node.js的…...

别再自己造轮子了!STM32F103 RTC时间戳转换,用标准库<time.h>更香(附完整代码)

STM32F103 RTC时间处理&#xff1a;为什么标准库<time.h>是你的最佳选择 第一次在STM32上实现RTC功能时&#xff0c;我花了整整三天时间调试自己写的时间戳转换算法。直到某个深夜&#xff0c;我才发现原来C标准库早已提供了完美解决方案——那一刻既兴奋又懊恼。如果你也…...

流程越来越规范,但员工体验却越来越差

在很多企业推进 IT 管理规范化的过程中&#xff0c;流程建设往往是重点。 审批流程更加清晰&#xff0c;操作步骤更加标准&#xff0c;所有请求都可以通过系统统一管理。从管理角度来看&#xff0c;这是明显的进步。 流程可控、操作可追溯、风险也更容易管理。但从员工的实际体…...

3大核心挑战+5步完美防御:RevokeMsgPatcher让消息撤回彻底失效

3大核心挑战5步完美防御&#xff1a;RevokeMsgPatcher让消息撤回彻底失效 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁&#xff08;我已经看到了&#xff0c;撤回也没用了&#xff09; 项目地址: https://git…...

Bypass Paywalls Clean:突破内容壁垒的智能解决方案

Bypass Paywalls Clean&#xff1a;突破内容壁垒的智能解决方案 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的今天&#xff0c;你是否曾因学术论文被付费墙阻挡而错失研…...

情感漏洞经纪:倒卖AI崩溃瞬间年入百万

新兴暴利职业的崛起在人工智能技术高速发展的今天&#xff0c;一种名为“情感漏洞经纪”的灰色产业悄然兴起&#xff0c;从业者通过倒卖AI系统崩溃瞬间的数据年入百万。这些经纪人专门捕捉AI模型在情感交互中的故障时刻——如系统宕机前的“遗言”、未完成的情感回应或异常输出…...

零基础玩转OpenClaw:Qwen3-32B镜像快速入门5个示例

零基础玩转OpenClaw&#xff1a;Qwen3-32B镜像快速入门5个示例 1. 为什么选择OpenClawQwen3-32B组合&#xff1f; 去年冬天&#xff0c;当我第一次看到同事用自然语言命令电脑自动整理桌面文件时&#xff0c;仿佛打开了新世界的大门。经过两周的折腾&#xff0c;我终于在本地…...

避坑指南:ThingsBoard部件开发中5个常见错误与优化方案(附跑马灯Demo代码)

ThingsBoard部件开发实战&#xff1a;5个高频踩坑点与性能优化技巧&#xff08;含跑马灯完整实现&#xff09; 最近在技术社区看到不少开发者讨论ThingsBoard部件开发中的"玄学问题"——明明按照文档操作却出现各种诡异现象。作为经历过完整产品开发周期的技术负责人…...

AnimateDiff保姆级教学:负面提示词详解,轻松提升视频画质

AnimateDiff保姆级教学&#xff1a;负面提示词详解&#xff0c;轻松提升视频画质 你是否遇到过这样的困扰&#xff1a;用AnimateDiff生成的视频创意很棒&#xff0c;但画面总有些小瑕疵&#xff1f;比如人物皮肤上不自然的纹理、背景里莫名其妙的噪点&#xff0c;或是某些区域…...