"It's a Trap!"-How Speculation Invariance Can Be Abused with Forward\n Speculative Interference
Pavlos Aimoniotis, Christos Sakalis, Magnus Själander, Stefanos Kaxiras
Abstract
Open-access reader
Pavlos Aimoniotis, Christos Sakalis, Magnus Själander, Stefanos Kaxiras
Abstract
Open-access reader
Speculative side-channel attacks access sensitive data and use transmitters\nto leak the data during wrong-path execution. Various defenses have been\nproposed to prevent such information leakage. However, not all speculatively\nexecuted instructions are unsafe: Recent work demonstrates that speculation\ninvariant instructions are independent of speculative control-flow paths and\nare guaranteed to eventually commit, regardless of the speculation outcome.\nCompile-time information coupled with run-time mechanisms can then selectively\nlift defenses for speculation invariant instructions, reclaiming some of the\nlost performance.\n Unfortunately, speculation invariant instructions can easily be manipulated\nby a form of speculative interference to leak information via a new\nside-channel that we introduce in this paper. We show that forward speculative\ninterference whereolder speculative instructions interfere with younger\nspeculation invariant instructions effectively turns them into transmitters for\nsecret data accessed during speculation. We demonstrate forward speculative\ninterference on actual hardware, by selectively filling the reorder buffer\n(ROB) with instructions, pushing speculative invariant instructions in-or-out\nof the ROB on demand, based on a speculatively accessed secret. This reveals\nthe speculatively accessed secret, as the occupancy of the ROB itself becomes a\nnew speculative side-channel.\n
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Speculative side-channel attacks access sensitive data and use transmitters\nto leak the data during wrong-path execution. Various defenses have been\nproposed to prevent such information leakage. However, not all speculatively\nexecuted instructions are unsafe: Recent work demonstrates that speculation\ninvariant instructions are independent of speculative control-flow paths and\nare guaranteed to eventually commit, regardless of the speculation outcome.\nCompile-time information coupled with run-time mechanisms can then selectively\nlift defenses for speculation invariant instructions, reclaiming some of the\nlost performance.\n Unfortunately, speculation invariant instructions can easily be manipulated\nby a form of speculative interference to leak information via a new\nside-channel that we introduce in this paper. We show that forward speculative\ninterference whereolder speculative instructions interfere with younger\nspeculation invariant instructions effectively turns them into transmitters for\nsecret data accessed during speculation. We demonstrate forward speculative\ninterference on actual hardware, by selectively filling the reorder buffer\n(ROB) with instructions, pushing speculative invariant instructions in-or-out\nof the ROB on demand, based on a speculatively accessed secret. This reveals\nthe speculatively accessed secret, as the occupancy of the ROB itself becomes a\nnew speculative side-channel.\n
Key concepts: Speculation, Speculative execution, Speculative multithreading, Computer science, Commit, Computer security, Information leakage, Side channel attack