The ghost is the machine: Weird machines in transient execution

Ping-Lun Wang, Fraser Brown, R. Wahby
{"title":"The ghost is the machine: Weird machines in transient execution","authors":"Ping-Lun Wang, Fraser Brown, R. Wahby","doi":"10.1109/SPW59333.2023.00029","DOIUrl":null,"url":null,"abstract":"Microarchitectural attacks typically exploit some form of transient execution to steal sensitive data. More recently, though, a new class of attacks has used transient execution to (covertly) compute: Wampler et al. use Spectre primitives to obfuscate control flow, and Evtyushkin et al. construct “weird” logic gates that use Intel's TSX to compute entirely using microarchitectural side effects (i.e., in a cache side channel). This paper generalizes weird gate constructions beyond TSX and shows how to build such gates using any transient execution primitive. We build logic gates using exceptions, the branch predictor, and the branch target buffer, and we design a NOT gate that appears to perform roughly one order of magnitude11The data in the original paper reports XOR execution speed and XOR executions per second that do not agree with one another. Taking the execution speed at face value, our construction is two orders of magnitude faster; instead, we calculate a faster execution speed for their reported executions per second, and our approach only yields an order of magnitude improvement. better than the prior state of the art. These constructions work on AMD, Intel, and ARM machines with ≈95-99% accuracy; a million AND gate executions take from half a second (when built with TSX) to four and a half seconds (when built with the branch target buffer). Our results indicate that weird gates are more generally applicable than previously known and may become more widely used, e.g., for malware obfuscation.","PeriodicalId":308378,"journal":{"name":"2023 IEEE Security and Privacy Workshops (SPW)","volume":"127 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 IEEE Security and Privacy Workshops (SPW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SPW59333.2023.00029","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Microarchitectural attacks typically exploit some form of transient execution to steal sensitive data. More recently, though, a new class of attacks has used transient execution to (covertly) compute: Wampler et al. use Spectre primitives to obfuscate control flow, and Evtyushkin et al. construct “weird” logic gates that use Intel's TSX to compute entirely using microarchitectural side effects (i.e., in a cache side channel). This paper generalizes weird gate constructions beyond TSX and shows how to build such gates using any transient execution primitive. We build logic gates using exceptions, the branch predictor, and the branch target buffer, and we design a NOT gate that appears to perform roughly one order of magnitude11The data in the original paper reports XOR execution speed and XOR executions per second that do not agree with one another. Taking the execution speed at face value, our construction is two orders of magnitude faster; instead, we calculate a faster execution speed for their reported executions per second, and our approach only yields an order of magnitude improvement. better than the prior state of the art. These constructions work on AMD, Intel, and ARM machines with ≈95-99% accuracy; a million AND gate executions take from half a second (when built with TSX) to four and a half seconds (when built with the branch target buffer). Our results indicate that weird gates are more generally applicable than previously known and may become more widely used, e.g., for malware obfuscation.
幽灵是机器:在瞬态执行的奇怪机器
微架构攻击通常利用某种形式的瞬态执行来窃取敏感数据。然而,最近,一类新的攻击使用瞬态执行来(秘密地)计算:Wampler等人使用Spectre原语来混淆控制流,Evtyushkin等人构建了“奇怪的”逻辑门,使用英特尔的TSX完全使用微架构的副作用进行计算(即,在缓存侧通道中)。本文推广了TSX之外的怪异门结构,并展示了如何使用任何瞬态执行原语构建此类门。我们使用异常、分支预测器和分支目标缓冲区构建逻辑门,并且我们设计了一个看起来执行大约一个数量级的非门。原始论文中的数据报告了异或执行速度和每秒异或执行次数彼此不一致。从执行速度的表面上看,我们的构造要快两个数量级;相反,我们计算出它们报告的每秒执行数的更快的执行速度,我们的方法只产生一个数量级的改进。比之前的技术水平要好。这些结构适用于AMD、Intel和ARM机器,精度约为95-99%;一百万次AND门的执行时间从半秒(使用TSX构建时)到4.5秒(使用分支目标缓冲区构建时)不等。我们的研究结果表明,怪异门比以前已知的更普遍适用,并且可能会被更广泛地使用,例如,用于恶意软件混淆。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信