On 11/19/18 11:32 AM, Andrea Arcangeli wrote: > The specs don't say if by making it immune from BTB mistraining, it > also could prevent to mistrain the BTB in order to attack what's > outside the SECCOMP jail. Probably it won't and I doubt we can rely on > it even if some implementation could do that.
I just talked with Andi and Tim about this. The *current* spec for STIBP[1] states that it bidirectional: setting it on one thread provides mitigation against any threads attacking any other thread on the core. This means that it provides protection for victims being in and out of SECCOMP jail when the attacker is either in or out of SECCOMP jail. However, the current spec[1], differs from the *original* spec PDF that Intel released last year. Both are correct in that they describe all current (Intel) implementations of STIBP. However, the new _description_ of STIBP is stronger than it was originally. Here's the current description: > Setting ... STIBP ... on a logical processor prevents the predicted > targets of indirect branches on any logical processor of that core > from being controlled by software that executes (or executed > previously) on another logical processor of the same core. 1. https://software.intel.com/security-software-guidance/insights/deep-dive-single-thread-indirect-branch-predictors