Documentation/srso: Document IBPB aspect and fix formatting

Add a note about the dependency of the User->User mitigation on the
previous Spectre v2 IBPB selection.

Make the layout moar pretty.
Signed-off-by: default avatarBorislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20230809102700.29449-4-bp@alien8.de
parent 0fddfe33
...@@ -42,43 +42,60 @@ The sysfs file showing SRSO mitigation status is: ...@@ -42,43 +42,60 @@ The sysfs file showing SRSO mitigation status is:
The possible values in this file are: The possible values in this file are:
- 'Not affected' The processor is not vulnerable * 'Not affected':
- 'Vulnerable: no microcode' The processor is vulnerable, no The processor is not vulnerable
microcode extending IBPB functionality
to address the vulnerability has been
applied.
- 'Mitigation: microcode' Extended IBPB functionality microcode * 'Vulnerable: no microcode':
patch has been applied. It does not
address User->Kernel and Guest->Host The processor is vulnerable, no microcode extending IBPB
transitions protection but it does functionality to address the vulnerability has been applied.
address User->User and VM->VM attack
vectors. * 'Mitigation: microcode':
Extended IBPB functionality microcode patch has been applied. It does
not address User->Kernel and Guest->Host transitions protection but it
does address User->User and VM->VM attack vectors.
Note that User->User mitigation is controlled by how the IBPB aspect in
the Spectre v2 mitigation is selected:
* conditional IBPB:
where each process can select whether it needs an IBPB issued
around it PR_SPEC_DISABLE/_ENABLE etc, see :doc:`spectre`
* strict:
i.e., always on - by supplying spectre_v2_user=on on the kernel
command line
(spec_rstack_overflow=microcode) (spec_rstack_overflow=microcode)
- 'Mitigation: safe RET' Software-only mitigation. It complements * 'Mitigation: safe RET':
the extended IBPB microcode patch
functionality by addressing User->Kernel Software-only mitigation. It complements the extended IBPB microcode
and Guest->Host transitions protection. patch functionality by addressing User->Kernel and Guest->Host
transitions protection.
Selected by default or by spec_rstack_overflow=safe-ret
Selected by default or by * 'Mitigation: IBPB':
spec_rstack_overflow=safe-ret
- 'Mitigation: IBPB' Similar protection as "safe RET" above Similar protection as "safe RET" above but employs an IBPB barrier on
but employs an IBPB barrier on privilege privilege domain crossings (User->Kernel, Guest->Host).
domain crossings (User->Kernel,
Guest->Host).
(spec_rstack_overflow=ibpb) (spec_rstack_overflow=ibpb)
- 'Mitigation: IBPB on VMEXIT' Mitigation addressing the cloud provider * 'Mitigation: IBPB on VMEXIT':
scenario - the Guest->Host transitions
only. Mitigation addressing the cloud provider scenario - the Guest->Host
transitions only.
(spec_rstack_overflow=ibpb-vmexit) (spec_rstack_overflow=ibpb-vmexit)
In order to exploit vulnerability, an attacker needs to: In order to exploit vulnerability, an attacker needs to:
- gain local access on the machine - gain local access on the machine
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment