【Mitigating Voltage Attacks in Multi-Tenant FPGAs 论文笔记】

news2024/11/24 14:29:24

减轻多租户FPGA中的电压攻击

  • 摘要
  • 引言
  • 内容
    • 背景和相关工作
    • INTEL STRATIX 10 FPGA上的PDN攻击
    • Stratix 10 PDN特性
    • 定位电压下降
    • 片上监控和攻击抑制
  • 结论和未来工作
    • 结论:
    • 未来工作

作者:GEORGE PROVELENGIOS, University of Massachusetts Amherst, MA, USA
DANIEL HOLCOMB, University of Massachusetts Amherst, MA, USA
RUSSELL TESSIER, University of Massachusetts Amherst, MA, USA

摘要

恶意的云FPGA用户可以精心设计故意浪费电力的电路,并将其部署以导致拒绝服务和故障注入攻击。
FPGA云服务使用的主要防御策略包括检查用户提交的已知的严重消耗电力的电路结构设计,但是时长会有新的恶意电路结构被设计。
本文的贡献:

  • 评估了通常不会被FPGA云计算供应商强加的设计规则检查所标记的电路功耗技术
  • 识别定位基于功率浪费器的电压攻击源,在导致板重置之前阻止攻击

引言

随着FPGA在逻辑容量和性能方面的增长,其在各种应用程序中的使用也急剧增加。而所有基于FPGA的核心逻辑共享相同的配电网络(PDN)。研究表明,攻击者引起的芯片上电压降可以驱动基于FPGA的电路板复位[14]或在相邻电路中引发时序故障[1,20,24,27]。

本文的贡献:
描述并评估了一种 易于实现 很难扫描检测 (隐蔽)功耗电路
检查了Stratix 10设备对我们的隐形功耗电路突然激活的电压响应。
在Stratix 10电路中实现了优化的FPGA 隔离激活电压攻击的位置 传感器网络。
最后,提出并开发了一个实用系统,通过停用FPGA逻辑区域中的时钟信号来实时减轻电压攻击

总结:使用Stratix 10设备,我们扩展了攻击定位技术,并引入了一种机制,以抑制怀疑恶意功耗的区域中的设计时钟。

手稿的其余部分组织如下。
第2节描述了我们的威胁模型和FPGA电压攻击、传感器、监控和缓解技术的背景。
第3节介绍了我们使用片上电压传感器检测功率波动的方法,
第4节介绍了如何使用我们的方法来定位Stratix 10器件中的不稳定性源。
我们的片上电压传感和实时攻击缓解系统在第5节中进行了描述。
第6节总结了手稿,并为未来的工作提供了方向

内容

背景和相关工作

威胁模型:
恶意的第三方知识产权(IP)内核
多个租户同时共享使用FPGA设备
电压操纵攻击:
一个租户可能试图通过基于查找表(LUT)的移位
寄存器[41]或故意短路[29]恶意诱导电源电压的局部不稳定,也可能利用电网谐振。
FPGA电压攻击补救方案:(已有的抑制方案)
Krautter等人提出了比特流扫描来定位功耗电路,如RO[21]。
Shen等人[31]在运行时使用了时钟边沿抑制器来抑制用户设计引起的电压尖峰。
Zick等人证明了使用通过管芯收集的电压信息来识别攻击[40]. 提出了抑制攻击的硬件电路,但未进行演示。
WS EC2 F1使用命令fpgadescape local image通过其运行时管理工具提供功率监控,尽管测量仅以每分钟一次测量的时间粒度提供给用户

INTEL STRATIX 10 FPGA上的PDN攻击

电感器导致功率浪费器激活时的大量的瞬时电压降,随后是持续的片上电阻降。
在这里插入图片描述
对抗功耗电路
定性和定量地评估了五种这样的同步和异步功率浪费器。

3.1.1基于RO的功率浪费器。
在这里插入图片描述

3.1.2替代电源浪费器
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
3.1.3基于AES的功率浪费器。
在这里插入图片描述
3.1.4评估基于AES的功率浪费器的有效性
在这里插入图片描述
三角形的两边表示最慢和最快的路径到达AES浪费的每一轮的时间,循环次数不断增加。时钟周期的开始用左侧的数字标记。三角形的灰色阴影区域描绘了120轮浪费中信号活动发生的时间。红色阴影区域表示信号活动的最大重叠。增加时钟频率会增强链的前几轮中的信号转换重叠
在这里插入图片描述
时钟频率为4和50MHz的120轮AES浪费器的每轮功耗。随后的几轮增强了激励,导致每轮功耗增加

Stratix 10 PDN特性

使用基于RO和AES的功率浪费器来评估Stratix 10 的 电压对 瞬时激活浪费器的 反应。由片上电压传感器获取电压信息。
片上电压传感器:
为了确定片上电压,我们使用基于环形振荡器的电压传感器测量PDN的选定位置处的电压。
传感器网络的架构图如下:
传感器网络的架构
频率与电压相关的最终校准曲线如下图
在这里插入图片描述
PDN对功耗的响应:
每个传感器测量的电源电压首先下降、下冲,然后稳定回到低于标称0.9 V的稳态电压,距离较远的传感器观察到类似的行为,但电压幅值较小。

图10a所示的曲线图是用30000台基于基于RO的废电器生成的
图10b中的图是用95个循环的基于AES的废电器生成的。
图10c显示了10个循环的基于AES电路的电源电压效应。
在这里插入图片描述

定位电压下降

由上部分内容得知,最接近功耗的电路经历最大的电压降,并且电压降越远越小(图10)。电压传感器的空间分布网络可以使资源管理器能够监测电压梯度并识别发生的任何攻击的源。
传感器网络:
通过多次实验和得出电压与Stratix 10装置上攻击中心距离的关系(均以观察到的传感器的最小电压绘制)
在这里插入图片描述
尽量减少传感器数量:
研究了使用不同数量的传感器可以精确定位攻击者,使用给定传感器子集的x个位置预测的平均值与利用所有218个传感器的x个定位预测的平均之间的欧几里德距离。每种配置的距离误差以LAB表示。实验表明,传感器数量于距离的关系如下:(当使用所有218个传感器时,70个传感器预测平均预测攻击中心距离预测中心14个LAB)
在这里插入图片描述

片上监控和攻击抑制

增强了上部分中描述的电压传感网络,以包括直接补救措施来阻止电压攻击。该网络增加了处理能力和时钟节流电路,用于疑似功耗区域。我们的解决方案是使用一个试图使基于FPGA的电路板崩溃的基于AES的浪费器进行评估的。
方法:在攻击开始时快速响应FPGA电压的显著下降,一旦超过预期的电压降,立即停用相关区域的时钟缓冲器,从而抑制攻击。

5.2.1 时钟区域和传感器

5.2.2阈值校准

5.2.3攻击检测和补救

5.3系统评估

5.4限制

结论和未来工作

结论:

评估了潜在攻击者可以在多租户FPGA平台中实现的功耗电路,对电路的功率效率进行了评估。

描述了一种新的基于FPGA的补救方法,该方法实时收集来自多个租户的电压值,并将时钟停用到任何涉嫌恶意行为的区域。我们的方法可以在21µs内响应攻击,并成功防止了导致电路板复位一系列电压攻击。

未来工作

虽然我们的方法可以抑制电路板复位,但其速度不够快,无法防止相邻电路中的功耗导致的定时故障

本文中讨论的监控系统评估检查了浪费者被限制在单个租户区域的攻击场景,并且可以扩展到考虑具有多个恶意租户的场景。

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

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

相关文章

Python学习-9.2 程序界面-sys库介绍

可以在Python标准库大全:https://docs.python.org/zh-cn/3/library/index.html中查找sys标准库的解释说明 sys标准库 本章对sys标准库中的重点函数进行讲解,sys库的作用主要是查看python解释器信息及传递信息给python解释器。 sys库的三个重要函数&…

JVM-------栈

栈: 早在数据结构的学习中,我们就知道了栈具有先进先出的特点,而数据结构是程序的一部分,那么栈的特点在java中是如何体现的呢? 比如:main函数先执行而后结束,就是利用了栈的特点。 在java中&#xff0c…

[附源码]计算机毕业设计Node.jsBuff饰品交易平台论文(程序+LW)

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

2022需求最大的8种编程语言排名

DevJobsScanner分析了过去14个月(从2021 10月到2022年11月)超过1200万开发人员的工作需求,并选择了明确需要编程语言的工作机会,获得了2022年最流行的八种编程语言。 市场上需求最高的前八种语言是: 1、 JavaScript/…

Appium基础 — Appium Inspector定位工具(二)

5、Appium Inspector工具的使用 (1)Inspector 定位控件界面的详细介绍 布局1:截图的手机界面 可以点击选择元素。 布局2:顶部操作栏 从左往右的按钮依次是 Select Element:选择元素。 Swipe By Coordinates&#xff…

json-server

安装node.js https://nodejs.org/zh-cn/download/剩下内容就是next,就默认安装在C盘好了。 WindowR:node -v 下面这种结果代表安装成功 还有 npm -v NPM 是什么 NPM描述 npm(“Node 包管理器”)是 JavaScript 运行时 Node.js 的默认程序包…

redis之数据倾斜如何处理

写在前面 我们在使用Redis分片集群时,集群最好的状态就是每个实例可以处理相同或相近比例的请求,但如果不是这样,则会出现某些实例压力特别大,而某些实例特别空闲的情况发生,本文就一起来看下这种情况是如何发生的以及…

基于Ubuntu + anaconda + tensorflow+jupyter的python深度学习开发环境配置

参考 基于Ubuntu anaconda tensorflowjupyter的python深度学习开发环境配置 - 云社区 - 腾讯云 1.激活Anaconda环境 下载anaconda并拷贝到安装目录中并解压,下载地址为: https://repo.anaconda.com/archive/Anaconda2-5.3.0-Linux-x86_64.sh 跳转…

如何在UnrealEngine虚幻引擎中加载Web页面

对于非游戏开发团队来讲,在面向非游戏领域的UE项目中嵌入Web页面并实现交互无疑能充分利用现有开发资源和流程,WebUI插件能提供完整的Web页面加载及交互手段,让团队中的UE开发工程师和Web开发工程师能够各司其职、紧密配合。 WebUI的安装配置…

互联网医疗领域月度观察——二十大报告明确提出健康中国建设目标,互联网医疗是建设重点

易观分析:在二十大报告中明确提及“把保障人民健康放在优先发展的战略位置,完善人民健康促进政策”“促进优质医疗资源扩容和区域均衡布局,坚持预防为主,加强重大慢性病健康管理,提高基层防病治病和健康管理能力”等有…

FLET简介:用Python构建Flutter应用

你知道可以用 Python 来构建 flutter 应用吗?😮 Flutter 在软件研发领域是非常流行的,今年就让我们深入了解一下,用 Python 构建 flutter 应用程序的世界!🙂 关于 FLET 梦想橡皮擦 在开始学习前&#xf…

【图像重建】正则化图像超分辨重建【含Matlab源码 1882期】

⛄一、正则化图像超分辨重建简介 图像超分辨率重建的非局部正则化模型与算法研究 利用图像非局部不连续性测度的概念,建立了面向图像超分辨的非局部正则化能量泛函和相应的变分框架.理论分析了该框架与目前关于双边滤波等一类广义邻域滤波器和经典的变分偏微分方程模型之间的…

[附源码]Nodejs计算机毕业设计焦作旅游网站Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

力扣(LeetCode)168. Excel表列名称(C++)

26进制 本题的数字从 111 开始,即 A1A1A1,Z26Z26Z26 。进制转化是依次提取数字从低到高的每一位,要求每一位从 000 开始 。对当前数字 −1-1−1 ,等于进制最低位 −1-1−1 ,也就是最低位看作 A0A0A0,Z25Z2…

Docker:Nacos的持久化和集群部署

目录 一、MySQL容器构建 二、单节点nacos容器外网部署 三、内网nacos多节点集群部署 四、外网Nginx负载内网nacos节点集群 一、MySQL容器构建 由于我们今天要启动的服务比较多,考虑到部分电脑可能会出现带不动的情况,我们可以先将之前的文件备份一下…

【教程】Anaconda安装

零、Anaconda介绍 Anaconda个人版是一个免费、易于安装的包管理器、环境管理器和Python发行版(所以装了Anaconda就可以不用再另外装Python了),有提供非常多的开源包,用Anaconda来安装这些开源包相对来说方便一些,Anac…

jdk下载与安装教程(win10)

JAVA下载地址:Java Downloads 下载后直接点击安装程序,点击【运行】。 安装过程很简单,一直点击下一步就可以了。 安装完成后配置: 一、右键点击桌面【此电脑】,选择【属性】。 二、选择【高级系统设置】。 三、点击…

Git学习笔记-1.Git基础知识

Git 食用方法 1.简介 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 相信很多同学抄作业写作业的时候多多少少都见过git clone xxx这样的命令,这也算与Git结识的一个奇怪方式? 值得一提的是,Gi…

【树莓派不吃灰】兄弟连篇③ 用户和用户组、权限管理、文件系统管理

目录1、用户和用户组1.1 用户配置文件1.1.1 /etc/passwd1.1.2 /etc/shadow1.1.3 /etc/group、/etc/gshadow1.2 用户管理相关文件1.3 用户管理命令1.3.1 useradd1.3.2 passwd1.3.3 usermod1.3.4 chage1.3.5 userdel1.3.6 su1.4 用户组管理命令2、权限管理2.1 ACL权限2.1.1 ACL权…

华为数字化转型之道 实践篇 第八章 数字化交易:让做生意简单、高效

第八章 数字化交易:让做生意简单、高效 交易流对于大多数To B企业而言都是核心业务流之一。交易流既包括信息流,它即关乎客户的满意度,又直接影响企业经营业绩的好坏。 To C场景的挑战在于简单的事情如何在短时间内做亿万遍。而To B场景与此恰恰相反,交易的数量没那么多,…