FIX: Methodology GSO headers
[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.43
12
13   Checking for vulnerabilities on current system
14   Kernel is Linux 4.15.0-72-generic #81-Ubuntu SMP Tue Nov 26 12:20:02 UTC 2019 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 0x8301034 cpuid 0x830f10)
40     * CPU microcode is the latest known available version: NO (latest version is 0x8301039 dated 2020/02/07 according to builtin firmwares DB v160.20200912+i20200722)
41   * CPU vulnerability to the speculative execution attack variants
42     * Vulnerable to CVE-2017-5753 (Spectre Variant 1, bounds check bypass): YES
43     * Vulnerable to CVE-2017-5715 (Spectre Variant 2, branch target injection): YES
44     * Vulnerable to CVE-2017-5754 (Variant 3, Meltdown, rogue data cache load): NO
45     * Vulnerable to CVE-2018-3640 (Variant 3a, rogue system register read): NO
46     * Vulnerable to CVE-2018-3639 (Variant 4, speculative store bypass): YES
47     * Vulnerable to CVE-2018-3615 (Foreshadow (SGX), L1 terminal fault): NO
48     * Vulnerable to CVE-2018-3620 (Foreshadow-NG (OS), L1 terminal fault): NO
49     * Vulnerable to CVE-2018-3646 (Foreshadow-NG (VMM), L1 terminal fault): NO
50     * Vulnerable to CVE-2018-12126 (Fallout, microarchitectural store buffer data sampling (MSBDS)): NO
51     * Vulnerable to CVE-2018-12130 (ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)): NO
52     * Vulnerable to CVE-2018-12127 (RIDL, microarchitectural load port data sampling (MLPDS)): NO
53     * Vulnerable to CVE-2019-11091 (RIDL, microarchitectural data sampling uncacheable memory (MDSUM)): NO
54     * Vulnerable to CVE-2019-11135 (ZombieLoad V2, TSX Asynchronous Abort (TAA)): NO
55     * Vulnerable to CVE-2018-12207 (No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)): NO
56     * Vulnerable to 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 (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   * SRBDS mitigation control is supported by the kernel: NO
163   * SRBDS mitigation control is enabled and active: NO (SRBDS not found in sysfs hierarchy)
164   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
165
166   > 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
167
168   Need more detailed information about mitigation options? Use --explain
169   A false sense of security is worse than no security at all, see --disclaimer
170
171 ::
172
173   Spectre and Meltdown mitigation detection tool v0.43
174
175   Checking for vulnerabilities on current system
176   Kernel is Linux 4.15.0-72-generic #81-Ubuntu SMP Tue Nov 26 12:20:02 UTC 2019 x86_64
177   CPU is AMD EPYC 7532 32-Core Processor
178
179   Hardware check
180   * Hardware support (CPU microcode) for mitigation techniques
181     * Indirect Branch Restricted Speculation (IBRS)
182       * SPEC_CTRL MSR is available: YES
183       * CPU indicates IBRS capability: YES (IBRS_SUPPORT feature bit)
184       * CPU indicates preferring IBRS always-on: NO
185       * CPU indicates preferring IBRS over retpoline: YES
186     * Indirect Branch Prediction Barrier (IBPB)
187       * PRED_CMD MSR is available: YES
188       * CPU indicates IBPB capability: YES (IBPB_SUPPORT feature bit)
189     * Single Thread Indirect Branch Predictors (STIBP)
190       * SPEC_CTRL MSR is available: YES
191       * CPU indicates STIBP capability: YES (AMD STIBP feature bit)
192       * CPU indicates preferring STIBP always-on: NO
193     * Speculative Store Bypass Disable (SSBD)
194       * CPU indicates SSBD capability: YES (AMD SSBD in SPEC_CTRL)
195     * L1 data cache invalidation
196       * FLUSH_CMD MSR is available: NO
197       * CPU indicates L1D flush capability: NO
198     * CPU supports Transactional Synchronization Extensions (TSX): NO
199     * CPU supports Software Guard Extensions (SGX): NO
200     * CPU supports Special Register Buffer Data Sampling (SRBDS): NO
201     * CPU microcode is known to cause stability problems: NO (family 0x17 model 0x31 stepping 0x0 ucode 0x8301034 cpuid 0x830f10)
202     * CPU microcode is the latest known available version: NO (latest version is 0x8301039 dated 2020/02/07 according to builtin firmwares DB v160.20200912+i20200722)
203   * CPU vulnerability to the speculative execution attack variants
204     * Vulnerable to CVE-2017-5753 (Spectre Variant 1, bounds check bypass): YES
205     * Vulnerable to CVE-2017-5715 (Spectre Variant 2, branch target injection): YES
206     * Vulnerable to CVE-2017-5754 (Variant 3, Meltdown, rogue data cache load): NO
207     * Vulnerable to CVE-2018-3640 (Variant 3a, rogue system register read): NO
208     * Vulnerable to CVE-2018-3639 (Variant 4, speculative store bypass): YES
209     * Vulnerable to CVE-2018-3615 (Foreshadow (SGX), L1 terminal fault): NO
210     * Vulnerable to CVE-2018-3620 (Foreshadow-NG (OS), L1 terminal fault): NO
211     * Vulnerable to CVE-2018-3646 (Foreshadow-NG (VMM), L1 terminal fault): NO
212     * Vulnerable to CVE-2018-12126 (Fallout, microarchitectural store buffer data sampling (MSBDS)): NO
213     * Vulnerable to CVE-2018-12130 (ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)): NO
214     * Vulnerable to CVE-2018-12127 (RIDL, microarchitectural load port data sampling (MLPDS)): NO
215     * Vulnerable to CVE-2019-11091 (RIDL, microarchitectural data sampling uncacheable memory (MDSUM)): NO
216     * Vulnerable to CVE-2019-11135 (ZombieLoad V2, TSX Asynchronous Abort (TAA)): NO
217     * Vulnerable to CVE-2018-12207 (No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)): NO
218     * Vulnerable to CVE-2020-0543 (Special Register Buffer Data Sampling (SRBDS)): NO
219
220   CVE-2017-5753 aka 'Spectre Variant 1, bounds check bypass'
221   * Mitigated according to the /sys interface: YES (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
222   * Kernel has array_index_mask_nospec: YES (1 occurrence(s) found of x86 64 bits array_index_mask_nospec())
223   * Kernel has the Red Hat/Ubuntu patch: NO
224   * Kernel has mask_nospec64 (arm64): NO
225   * Kernel has array_index_nospec (arm64): NO
226   > STATUS: NOT VULNERABLE (Mitigation: usercopy/swapgs barriers and __user pointer sanitization)
227
228   CVE-2017-5715 aka 'Spectre Variant 2, branch target injection'
229   * Mitigated according to the /sys interface: YES (Mitigation: Full AMD retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling)
230   * Mitigation 1
231     * Kernel is compiled with IBRS support: YES
232       * IBRS enabled and active: YES (for firmware code only)
233     * Kernel is compiled with IBPB support: YES
234       * IBPB enabled and active: YES
235   * Mitigation 2
236     * Kernel has branch predictor hardening (arm): NO
237     * Kernel compiled with retpoline option: YES
238       * Kernel compiled with a retpoline-aware compiler: YES (kernel reports full retpoline compilation)
239   > STATUS: NOT VULNERABLE (Full retpoline + IBPB are mitigating the vulnerability)
240
241   CVE-2017-5754 aka 'Variant 3, Meltdown, rogue data cache load'
242   * Mitigated according to the /sys interface: YES (Not affected)
243   * Kernel supports Page Table Isolation (PTI): YES
244     * PTI enabled and active: NO
245     * Reduced performance impact of PTI: NO (PCID/INVPCID not supported, performance impact of PTI will be significant)
246   * Running as a Xen PV DomU: NO
247   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
248
249   CVE-2018-3640 aka 'Variant 3a, rogue system register read'
250   * CPU microcode mitigates the vulnerability: YES
251   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
252
253   CVE-2018-3639 aka 'Variant 4, speculative store bypass'
254   * Mitigated according to the /sys interface: YES (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
255   * Kernel supports disabling speculative store bypass (SSB): YES (found in /proc/self/status)
256   * SSB mitigation is enabled and active: YES (per-thread through prctl)
257   * SSB mitigation currently active for selected processes: YES (systemd-journald systemd-logind systemd-networkd systemd-resolved systemd-timesyncd systemd-udevd)
258   > STATUS: NOT VULNERABLE (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
259
260   CVE-2018-3615 aka 'Foreshadow (SGX), L1 terminal fault'
261   * CPU microcode mitigates the vulnerability: N/A
262   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
263
264   CVE-2018-3620 aka 'Foreshadow-NG (OS), L1 terminal fault'
265   * Mitigated according to the /sys interface: YES (Not affected)
266   * Kernel supports PTE inversion: YES (found in kernel image)
267   * PTE inversion enabled and active: NO
268   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
269
270   CVE-2018-3646 aka 'Foreshadow-NG (VMM), L1 terminal fault'
271   * Information from the /sys interface: Not affected
272   * This system is a host running a hypervisor: NO
273   * Mitigation 1 (KVM)
274     * EPT is disabled: N/A (the kvm_intel module is not loaded)
275   * Mitigation 2
276     * L1D flush is supported by kernel: YES (found flush_l1d in kernel image)
277     * L1D flush enabled: NO
278     * Hardware-backed L1D flush supported: NO (flush will be done in software, this is slower)
279     * Hyper-Threading (SMT) is enabled: YES
280   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
281
282   CVE-2018-12126 aka 'Fallout, microarchitectural store buffer data sampling (MSBDS)'
283   * Mitigated according to the /sys interface: YES (Not affected)
284   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
285   * Kernel mitigation is enabled and active: NO
286   * SMT is either mitigated or disabled: NO
287   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
288
289   CVE-2018-12130 aka 'ZombieLoad, microarchitectural fill buffer data sampling (MFBDS)'
290   * Mitigated according to the /sys interface: YES (Not affected)
291   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
292   * Kernel mitigation is enabled and active: NO
293   * SMT is either mitigated or disabled: NO
294   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
295
296   CVE-2018-12127 aka 'RIDL, microarchitectural load port data sampling (MLPDS)'
297   * Mitigated according to the /sys interface: YES (Not affected)
298   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
299   * Kernel mitigation is enabled and active: NO
300   * SMT is either mitigated or disabled: NO
301   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
302
303   CVE-2019-11091 aka 'RIDL, microarchitectural data sampling uncacheable memory (MDSUM)'
304   * Mitigated according to the /sys interface: YES (Not affected)
305   * Kernel supports using MD_CLEAR mitigation: YES (found md_clear implementation evidence in kernel image)
306   * Kernel mitigation is enabled and active: NO
307   * SMT is either mitigated or disabled: NO
308   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
309
310   CVE-2019-11135 aka 'ZombieLoad V2, TSX Asynchronous Abort (TAA)'
311   * Mitigated according to the /sys interface: YES (Not affected)
312   * TAA mitigation is supported by kernel: YES (found tsx_async_abort in kernel image)
313   * TAA mitigation enabled and active: NO
314   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
315
316   CVE-2018-12207 aka 'No eXcuses, iTLB Multihit, machine check exception on page size changes (MCEPSC)'
317   * Mitigated according to the /sys interface: YES (Not affected)
318   * This system is a host running a hypervisor: NO
319   * iTLB Multihit mitigation is supported by kernel: YES (found itlb_multihit in kernel image)
320   * iTLB Multihit mitigation enabled and active: NO
321   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
322
323   CVE-2020-0543 aka 'Special Register Buffer Data Sampling (SRBDS)'
324   * SRBDS mitigation control is supported by the kernel: NO
325   * SRBDS mitigation control is enabled and active: NO (SRBDS not found in sysfs hierarchy)
326   > STATUS: NOT VULNERABLE (your CPU vendor reported your CPU model as not vulnerable)
327
328   > 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
329
330   Need more detailed information about mitigation options? Use --explain
331   A false sense of security is worse than no security at all, see --disclaimer