Techniques for control flow protection

    公开(公告)号:US11347839B2

    公开(公告)日:2022-05-31

    申请号:US16452916

    申请日:2019-06-26

    申请人: INTEL CORPORATION

    摘要: Various embodiments are generally directed to techniques for control flow protection with minimal performance overhead, such as by utilizing one or more micro-architectural optimizations to implement a shadow stack (SS) to verify a return address before returning from a function call, for instance. Some embodiments are particularly directed to a computing platform, such as an internet of things (IoT) platform, that overlaps or parallelizes one or more SS access operations with one or more data stack (DS) access operations.

    Secure Public Cloud with Protected Guest-Verified Host Control

    公开(公告)号:US20220019698A1

    公开(公告)日:2022-01-20

    申请号:US17449343

    申请日:2021-09-29

    申请人: Intel Corporation

    摘要: According to one embodiment, a method comprises executing an untrusted host virtual machine monitor (VMM) to manage execution of at least one guest virtual machine (VM). The VMM receives an encrypted key domain key, an encrypted guest code image, and an encrypted guest control structure. The VM also issues a create command. In response, a processor creates a first key domain comprising a region of memory to be encrypted by a key domain key. The encrypted key domain key is decrypted to produce the key domain key, which is inaccessible to the VMM. The VMM issues a launch command. In response, a first guest VM is launched within the first key domain. In response to a second launch command, a second guest VM is launched within the first key domain. The second guest VM provides an agent to act on behalf of the VMM. Other embodiments are described and claimed.

    MODE-SPECIFIC ENDBRANCH FOR CONTROL FLOW TERMINATION

    公开(公告)号:US20220019432A1

    公开(公告)日:2022-01-20

    申请号:US17404890

    申请日:2021-08-17

    申请人: Intel Corporation

    IPC分类号: G06F9/30 G06F9/38 G06F21/55

    摘要: A processor includes an execution unit and a processing logic operatively coupled to the execution unit, the processing logic to: enter a first execution state and transition to a second execution state responsive to executing a control transfer instruction. Responsive to executing a target instruction of the control transfer instruction, the processing logic further transitions to the first execution state responsive to the target instruction being a control transfer termination instruction of a mode identical to a mode of the processing logic following the execution of the control transfer instruction; and raises an execution exception responsive to the target instruction being a control transfer termination instruction of a mode different than the mode of the processing logic following the execution of the control transfer instruction.

    Technologies for untrusted code execution with processor sandbox support

    公开(公告)号:US11055401B2

    公开(公告)日:2021-07-06

    申请号:US15720083

    申请日:2017-09-29

    申请人: Intel Corporation

    摘要: Technologies for untrusted code execution include a computing device having a processor with sandbox support. The computing device executes code included in a native domain in a non-privileged, native processor mode. The computing device may invoke a sandbox jump processor instruction during execution of the code in the native domain to enter a sandbox domain. The computing device executes code in the sandbox domain in a non-privileged, sandbox processor mode in response to invoking the sandbox jump instruction. While executing in the sandbox processor mode, the processor denies access to memory outside of the sandbox domain and may deny execution of one or more prohibited instructions. From the sandbox domain, the computing device may execute a sandbox exit instruction to exit the sandbox domain and resume execution in the native domain. The computing device may execute processor instructions to configure the sandbox domain. Other embodiments are described and claimed.