feat(Docs): Update few sections
[csit.git] / docs / report / introduction / test_environment_sut_meltspec_zn2.rst
1 Spectre and Meltdown Checks
2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
3
4 Following section displays the output of a running shell script to tell if
5 system is vulnerable against the several speculative execution CVEs that were
6 made public in 2018. Script is available on `Spectre & Meltdown Checker Github
7 <https://github.com/speed47/spectre-meltdown-checker>`_.
8
9 ::
10
11   Spectre and Meltdown mitigation detection tool v0.44+
12
13   Checking for vulnerabilities on current system
14   Kernel is Linux 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64
15   CPU is AMD EPYC 7532 32-Core Processor
16
17   Hardware check
18   * Hardware support (CPU microcode) for mitigation techniques
19     * Indirect Branch Restricted Speculation (IBRS)
20       * SPEC_CTRL MSR is available: YES
21       * CPU indicates IBRS capability: YES (IBRS_SUPPORT feature bit)
22       * CPU indicates preferring IBRS always-on: NO
23       * CPU indicates preferring IBRS over retpoline: YES
24     * Indirect Branch Prediction Barrier (IBPB)
25       * PRED_CMD MSR is available: YES
26       * CPU indicates IBPB capability: YES (IBPB_SUPPORT feature bit)
27     * Single Thread Indirect Branch Predictors (STIBP)
28       * SPEC_CTRL MSR is available: YES
29       * CPU indicates STIBP capability: YES (AMD STIBP feature bit)
30       * CPU indicates preferring STIBP always-on: NO
31     * Speculative Store Bypass Disable (SSBD)
32       * CPU indicates SSBD capability: YES (AMD SSBD in SPEC_CTRL)
33     * L1 data cache invalidation
34       * FLUSH_CMD MSR is available: NO
35       * CPU indicates L1D flush capability: NO
36     * CPU supports Transactional Synchronization Extensions (TSX): NO
37     * CPU supports Software Guard Extensions (SGX): NO
38     * CPU supports Special Register Buffer Data Sampling (SRBDS): NO
39     * CPU microcode is known to cause stability problems: NO (family 0x17 model 0x31 stepping 0x0 ucode 0x8301038 cpuid 0x830f10)
40     * CPU microcode is the latest known available version: NO (latest version is 0x830104d dated 2020/07/28 according to builtin firmwares DB v191+i20210217)
41   * CPU vulnerability to the speculative execution attack variants
42     * Affected by CVE-2017-5753 (Spectre Variant 1, bounds check bypass): YES
43     * Affected by CVE-2017-5715 (Spectre Variant 2, branch target injection): YES
44     * Affected by CVE-2017-5754 (Variant 3, Meltdown, rogue data cache load): NO
45     * Affected by CVE-2018-3640 (Variant 3a, rogue system register read): NO
46     * Affected by CVE-2018-3639 (Variant 4, speculative store bypass): YES
47     * Affected by CVE-2018-3615 (Foreshadow (SGX), L1 terminal fault): NO
48     * Affected by CVE-2018-3620 (Foreshadow-NG (OS), L1 terminal fault): NO
49     * Affected by CVE-2018-3646 (Foreshadow-NG (VMM), L1 terminal fault): NO
50     * Affected by CVE-2018-12126 (Fallout, microarchitectural store buffer data sampling (MSBDS)): NO
51     * Affected by CVE-2018-12130 (ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)): NO
52     * Affected by CVE-2018-12127 (RIDL, microarchitectural load port data sampling (MLPDS)): NO
53     * Affected by CVE-2019-11091 (RIDL, microarchitectural data sampling uncacheable memory (MDSUM)): NO
54     * Affected by CVE-2019-11135 (ZombieLoad V2, TSX Asynchronous Abort (TAA)): NO
55     * Affected by CVE-2018-12207 (No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)): NO
56     * Affected by CVE-2020-0543 (Special Register Buffer Data Sampling (SRBDS)): NO
57
58   CVE-2017-5753 aka Spectre Variant 1, bounds check bypass
59   * Mitigated according to the /sys interface: YES (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
60   * Kernel has array_index_mask_nospec: YES (1 occurrence(s) found of x86 64 bits array_index_mask_nospec())
61   * Kernel has the Red Hat/Ubuntu patch: NO
62   * Kernel has mask_nospec64 (arm64): NO
63   * Kernel has array_index_nospec (arm64): NO
64   > STATUS: NOT VULNERABLE (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
65
66   CVE-2017-5715 aka Spectre Variant 2, branch target injection
67   * Mitigated according to the /sys interface: YES (Mitigation: Full AMD retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling)
68   * Mitigation 1
69     * Kernel is compiled with IBRS support: YES
70       * IBRS enabled and active: YES (for firmware code only)
71     * Kernel is compiled with IBPB support: YES
72       * IBPB enabled and active: YES
73   * Mitigation 2
74     * Kernel has branch predictor hardening (arm): NO
75     * Kernel compiled with retpoline option: YES
76       * Kernel compiled with a retpoline-aware compiler: YES (kernel reports full retpoline compilation)
77   > STATUS: NOT VULNERABLE (Full retpoline + IBPB are mitigating the vulnerability)
78
79   CVE-2017-5754 aka Variant 3, Meltdown, rogue data cache load
80   * Mitigated according to the /sys interface: YES (Not affected)
81   * Kernel supports Page Table Isolation (PTI): YES
82     * PTI enabled and active: NO
83     * Reduced performance impact of PTI: NO (PCID/INVPCID not supported, performance impact of PTI will be significant)
84   * Running as a Xen PV DomU: NO
85   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
86
87   CVE-2018-3640 aka Variant 3a, rogue system register read
88   * CPU microcode mitigates the vulnerability: YES
89   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
90
91   CVE-2018-3639 aka Variant 4, speculative store bypass
92   * Mitigated according to the /sys interface: YES (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
93   * Kernel supports disabling speculative store bypass (SSB): YES (found in /proc/self/status)
94   * SSB mitigation is enabled and active: YES (per-thread through prctl)
95   * SSB mitigation currently active for selected processes: YES (irqbalance systemd-journald systemd-logind systemd-networkd systemd-resolved systemd-timesyncd systemd-udevd)
96   > STATUS: NOT VULNERABLE (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
97
98   CVE-2018-3615 aka Foreshadow (SGX), L1 terminal fault
99   * CPU microcode mitigates the vulnerability: N/A
100   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
101
102   CVE-2018-3620 aka Foreshadow-NG (OS), L1 terminal fault
103   * Mitigated according to the /sys interface: YES (Not affected)
104   * Kernel supports PTE inversion: YES (found in kernel image)
105   * PTE inversion enabled and active: NO
106   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
107
108   CVE-2018-3646 aka Foreshadow-NG (VMM), L1 terminal fault
109   * Information from the /sys interface: Not affected
110   * This system is a host running a hypervisor: NO
111   * Mitigation 1 (KVM)
112     * EPT is disabled: N/A (the kvm_intel module is not loaded)
113   * Mitigation 2
114     * L1D flush is supported by kernel: YES (found flush_l1d in kernel image)
115     * L1D flush enabled: NO
116     * Hardware-backed L1D flush supported: NO (flush will be done in software, this is slower)
117     * Hyper-Threading (SMT) is enabled: YES
118   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
119
120   CVE-2018-12126 aka Fallout, microarchitectural store buffer data sampling (MSBDS)
121   * Mitigated according to the /sys interface: YES (Not affected)
122   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
123   * Kernel mitigation is enabled and active: NO
124   * SMT is either mitigated or disabled: NO
125   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
126
127   CVE-2018-12130 aka ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)
128   * Mitigated according to the /sys interface: YES (Not affected)
129   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
130   * Kernel mitigation is enabled and active: NO
131   * SMT is either mitigated or disabled: NO
132   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
133
134   CVE-2018-12127 aka RIDL, microarchitectural load port data sampling (MLPDS)
135   * Mitigated according to the /sys interface: YES (Not affected)
136   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
137   * Kernel mitigation is enabled and active: NO
138   * SMT is either mitigated or disabled: NO
139   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
140
141   CVE-2019-11091 aka RIDL, microarchitectural data sampling uncacheable memory (MDSUM)
142   * Mitigated according to the /sys interface: YES (Not affected)
143   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
144   * Kernel mitigation is enabled and active: NO
145   * SMT is either mitigated or disabled: NO
146   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
147
148   CVE-2019-11135 aka ZombieLoad V2, TSX Asynchronous Abort (TAA)
149   * Mitigated according to the /sys interface: YES (Not affected)
150   * TAA mitigation is supported by kernel: YES (found tsx_async_abort in kernel image)
151   * TAA mitigation enabled and active: NO
152   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
153
154   CVE-2018-12207 aka No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)
155   * Mitigated according to the /sys interface: YES (Not affected)
156   * This system is a host running a hypervisor: NO
157   * iTLB Multihit mitigation is supported by kernel: YES (found itlb_multihit in kernel image)
158   * iTLB Multihit mitigation enabled and active: NO
159   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
160
161   CVE-2020-0543 aka Special Register Buffer Data Sampling (SRBDS)
162   * Mitigated according to the /sys interface: YES (Not affected)
163   * SRBDS mitigation control is supported by the kernel: YES (found SRBDS implementation evidence in kernel image. Your kernel is up to date for SRBDS mitigation)
164   * SRBDS mitigation control is enabled and active: NO
165   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
166
167   > SUMMARY: CVE-2017-5753:OK CVE-2017-5715:OK CVE-2017-5754:OK CVE-2018-3640:OK CVE-2018-3639:OK CVE-2018-3615:OK CVE-2018-3620:OK CVE-2018-3646:OK CVE-2018-12126:OK CVE-2018-12130:OK CVE-2018-12127:OK CVE-2019-11091:OK CVE-2019-11135:OK CVE-2018-12207:OK CVE-2020-0543:OK
168
169 ::
170
171 Spectre and Meltdown mitigation detection tool v0.44+
172
173 Checking for vulnerabilities on current system
174 Kernel is Linux 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64
175 CPU is AMD EPYC 7532 32-Core Processor
176
177 Hardware check
178 * Hardware support (CPU microcode) for mitigation techniques
179   * Indirect Branch Restricted Speculation (IBRS)
180     * SPEC_CTRL MSR is available: YES
181     * CPU indicates IBRS capability: YES (IBRS_SUPPORT feature bit)
182     * CPU indicates preferring IBRS always-on: NO
183     * CPU indicates preferring IBRS over retpoline: YES
184   * Indirect Branch Prediction Barrier (IBPB)
185     * PRED_CMD MSR is available: YES
186     * CPU indicates IBPB capability: YES (IBPB_SUPPORT feature bit)
187   * Single Thread Indirect Branch Predictors (STIBP)
188     * SPEC_CTRL MSR is available: YES
189     * CPU indicates STIBP capability: YES (AMD STIBP feature bit)
190     * CPU indicates preferring STIBP always-on: NO
191   * Speculative Store Bypass Disable (SSBD)
192     * CPU indicates SSBD capability: YES (AMD SSBD in SPEC_CTRL)
193   * L1 data cache invalidation
194     * FLUSH_CMD MSR is available: NO
195     * CPU indicates L1D flush capability: NO
196   * CPU supports Transactional Synchronization Extensions (TSX): NO
197   * CPU supports Software Guard Extensions (SGX): NO
198   * CPU supports Special Register Buffer Data Sampling (SRBDS): NO
199   * CPU microcode is known to cause stability problems: NO (family 0x17 model 0x31 stepping 0x0 ucode 0x8301038 cpuid 0x830f10)
200   * CPU microcode is the latest known available version: NO (latest version is 0x830104d dated 2020/07/28 according to builtin firmwares DB v191+i20210217)
201 * CPU vulnerability to the speculative execution attack variants
202   * Affected by CVE-2017-5753 (Spectre Variant 1, bounds check bypass): YES
203   * Affected by CVE-2017-5715 (Spectre Variant 2, branch target injection): YES
204   * Affected by CVE-2017-5754 (Variant 3, Meltdown, rogue data cache load): NO
205   * Affected by CVE-2018-3640 (Variant 3a, rogue system register read): NO
206   * Affected by CVE-2018-3639 (Variant 4, speculative store bypass): YES
207   * Affected by CVE-2018-3615 (Foreshadow (SGX), L1 terminal fault): NO
208   * Affected by CVE-2018-3620 (Foreshadow-NG (OS), L1 terminal fault): NO
209   * Affected by CVE-2018-3646 (Foreshadow-NG (VMM), L1 terminal fault): NO
210   * Affected by CVE-2018-12126 (Fallout, microarchitectural store buffer data sampling (MSBDS)): NO
211   * Affected by CVE-2018-12130 (ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)): NO
212   * Affected by CVE-2018-12127 (RIDL, microarchitectural load port data sampling (MLPDS)): NO
213   * Affected by CVE-2019-11091 (RIDL, microarchitectural data sampling uncacheable memory (MDSUM)): NO
214   * Affected by CVE-2019-11135 (ZombieLoad V2, TSX Asynchronous Abort (TAA)): NO
215   * Affected by CVE-2018-12207 (No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)): NO
216   * Affected by CVE-2020-0543 (Special Register Buffer Data Sampling (SRBDS)): NO
217
218 CVE-2017-5753 aka Spectre Variant 1, bounds check bypass
219 * Mitigated according to the /sys interface: YES (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
220 * Kernel has array_index_mask_nospec: YES (1 occurrence(s) found of x86 64 bits array_index_mask_nospec())
221 * Kernel has the Red Hat/Ubuntu patch: NO
222 * Kernel has mask_nospec64 (arm64): NO
223 * Kernel has array_index_nospec (arm64): NO
224 > STATUS: NOT VULNERABLE (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
225
226 CVE-2017-5715 aka Spectre Variant 2, branch target injection
227 * Mitigated according to the /sys interface: YES (Mitigation: Full AMD retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling)
228 * Mitigation 1
229   * Kernel is compiled with IBRS support: YES
230     * IBRS enabled and active: YES (for firmware code only)
231   * Kernel is compiled with IBPB support: YES
232     * IBPB enabled and active: YES
233 * Mitigation 2
234   * Kernel has branch predictor hardening (arm): NO
235   * Kernel compiled with retpoline option: YES
236     * Kernel compiled with a retpoline-aware compiler: YES (kernel reports full retpoline compilation)
237 > STATUS: NOT VULNERABLE (Full retpoline + IBPB are mitigating the vulnerability)
238
239 CVE-2017-5754 aka Variant 3, Meltdown, rogue data cache load
240 * Mitigated according to the /sys interface: YES (Not affected)
241 * Kernel supports Page Table Isolation (PTI): YES
242   * PTI enabled and active: UNKNOWN (dmesg truncated, please reboot and relaunch this script)
243   * Reduced performance impact of PTI: NO (PCID/INVPCID not supported, performance impact of PTI will be significant)
244 * Running as a Xen PV DomU: NO
245 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
246
247 CVE-2018-3640 aka Variant 3a, rogue system register read
248 * CPU microcode mitigates the vulnerability: YES
249 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
250
251 CVE-2018-3639 aka Variant 4, speculative store bypass
252 * Mitigated according to the /sys interface: YES (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
253 * Kernel supports disabling speculative store bypass (SSB): YES (found in /proc/self/status)
254 * SSB mitigation is enabled and active: YES (per-thread through prctl)
255 * SSB mitigation currently active for selected processes: YES (irqbalance systemd-journald systemd-logind systemd-networkd systemd-resolved systemd-timesyncd systemd-udevd)
256 > STATUS: NOT VULNERABLE (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
257
258 CVE-2018-3615 aka Foreshadow (SGX), L1 terminal fault
259 * CPU microcode mitigates the vulnerability: N/A
260 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
261
262 CVE-2018-3620 aka Foreshadow-NG (OS), L1 terminal fault
263 * Mitigated according to the /sys interface: YES (Not affected)
264 * Kernel supports PTE inversion: YES (found in kernel image)
265 * PTE inversion enabled and active: NO
266 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
267
268 CVE-2018-3646 aka Foreshadow-NG (VMM), L1 terminal fault
269 * Information from the /sys interface: Not affected
270 * This system is a host running a hypervisor: NO
271 * Mitigation 1 (KVM)
272   * EPT is disabled: N/A (the kvm_intel module is not loaded)
273 * Mitigation 2
274   * L1D flush is supported by kernel: YES (found flush_l1d in kernel image)
275   * L1D flush enabled: NO
276   * Hardware-backed L1D flush supported: NO (flush will be done in software, this is slower)
277   * Hyper-Threading (SMT) is enabled: YES
278 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
279
280 CVE-2018-12126 aka Fallout, microarchitectural store buffer data sampling (MSBDS)
281 * Mitigated according to the /sys interface: YES (Not affected)
282 * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
283 * Kernel mitigation is enabled and active: NO
284 * SMT is either mitigated or disabled: NO
285 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
286
287 CVE-2018-12130 aka ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)
288 * Mitigated according to the /sys interface: YES (Not affected)
289 * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
290 * Kernel mitigation is enabled and active: NO
291 * SMT is either mitigated or disabled: NO
292 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
293
294 CVE-2018-12127 aka RIDL, microarchitectural load port data sampling (MLPDS)
295 * Mitigated according to the /sys interface: YES (Not affected)
296 * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
297 * Kernel mitigation is enabled and active: NO
298 * SMT is either mitigated or disabled: NO
299 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
300
301 CVE-2019-11091 aka RIDL, microarchitectural data sampling uncacheable memory (MDSUM)
302 * Mitigated according to the /sys interface: YES (Not affected)
303 * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
304 * Kernel mitigation is enabled and active: NO
305 * SMT is either mitigated or disabled: NO
306 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
307
308 CVE-2019-11135 aka ZombieLoad V2, TSX Asynchronous Abort (TAA)
309 * Mitigated according to the /sys interface: YES (Not affected)
310 * TAA mitigation is supported by kernel: YES (found tsx_async_abort in kernel image)
311 * TAA mitigation enabled and active: NO
312 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
313
314 CVE-2018-12207 aka No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)
315 * Mitigated according to the /sys interface: YES (Not affected)
316 * This system is a host running a hypervisor: NO
317 * iTLB Multihit mitigation is supported by kernel: YES (found itlb_multihit in kernel image)
318 * iTLB Multihit mitigation enabled and active: NO
319 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
320
321 CVE-2020-0543 aka Special Register Buffer Data Sampling (SRBDS)
322 * Mitigated according to the /sys interface: YES (Not affected)
323 * SRBDS mitigation control is supported by the kernel: YES (found SRBDS implementation evidence in kernel image. Your kernel is up to date for SRBDS mitigation)
324 * SRBDS mitigation control is enabled and active: NO
325 > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
326
327 > SUMMARY: CVE-2017-5753:OK CVE-2017-5715:OK CVE-2017-5754:OK CVE-2018-3640:OK CVE-2018-3639:OK CVE-2018-3615:OK CVE-2018-3620:OK CVE-2018-3646:OK CVE-2018-12126:OK CVE-2018-12130:OK CVE-2018-12127:OK CVE-2019-11091:OK CVE-2019-11135:OK CVE-2018-12207:OK CVE-2020-0543:OK