На моем компьютере с ubuntu 16.04 функция specter-meltdown-checker дает этот вывод:
Spectre and Meltdown mitigation detection tool v0.37+
Checking for vulnerabilities on current system
Kernel is Linux 4.4.0-122-generic #146-Ubuntu SMP Mon Apr 23 15:34:04 UTC 2018 x86_64
CPU is Intel(R) Celeron(R) CPU N3150 @ 1.60GHz
Hardware check
* Hardware support (CPU microcode) for mitigation techniques
* Indirect Branch Restricted Speculation (IBRS)
* SPEC_CTRL MSR is available: YES
* CPU indicates IBRS capability: YES (SPEC_CTRL feature bit)
* Indirect Branch Prediction Barrier (IBPB)
* PRED_CMD MSR is available: YES
* CPU indicates IBPB capability: YES (SPEC_CTRL feature bit)
* Single Thread Indirect Branch Predictors (STIBP)
* SPEC_CTRL MSR is available: YES
* CPU indicates STIBP capability: YES (Intel STIBP feature bit)
* Enhanced IBRS (IBRS_ALL)
* CPU indicates ARCH_CAPABILITIES MSR availability: NO
* ARCH_CAPABILITIES MSR advertises IBRS_ALL capability: NO
* CPU explicitly indicates not being vulnerable to Meltdown (RDCL_NO): NO
* CPU microcode is known to cause stability problems: NO (model 76 stepping 3 ucode 0x367 cpuid 0x406c3)
* CPU vulnerability to the three speculative execution attack variants
* Vulnerable to Variant 1: YES
* Vulnerable to Variant 2: YES
* Vulnerable to Variant 3: YES
CVE-2017-5753 [bounds check bypass] aka 'Spectre Variant 1'
* Mitigated according to the /sys interface: YES (Mitigation: OSB (observable speculation barrier, Intel v6))
* Kernel has array_index_mask_nospec (x86): NO
* Kernel has the Red Hat/Ubuntu patch: YES
* Kernel has mask_nospec64 (arm): NO
> STATUS: NOT VULNERABLE (Mitigation: OSB (observable speculation barrier, Intel v6))
CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigated according to the /sys interface: YES (Mitigation: Full generic retpoline, IBPB (Intel v4))
* Mitigation 1
* Kernel is compiled with IBRS support: YES
* IBRS enabled and active: YES (for both kernel and user space)
* Kernel is compiled with IBPB support: YES
* IBPB enabled and active: YES
* Mitigation 2
* Kernel has branch predictor hardening (arm): NO
* Kernel compiled with retpoline option: YES
* Kernel compiled with a retpoline-aware compiler: YES (kernel reports full retpoline compilation)
> STATUS: NOT VULNERABLE (Full retpoline + IBPB are mitigating the vulnerability)
CVE-2017-5754 [rogue data cache load] aka 'Meltdown' aka 'Variant 3'
* Mitigated according to the /sys interface: YES (Mitigation: PTI)
* Kernel supports Page Table Isolation (PTI): YES
* PTI enabled and active: YES
* Reduced performance impact of PTI: NO (PCID/INVPCID not supported, performance impact of PTI will be significant)
* Running as a Xen PV DomU: NO
> STATUS: NOT VULNERABLE (Mitigation: PTI)
A false sense of security is worse than no security at all, see --disclaimer
Обновление микрокода поддерживает IBRS, но по умолчанию оно не включено (но может быть включено, см. ответ) , Вместо этого используется retpoline с IBPB для смягчения. Почему это так? Был бы IBRS не лучшей защитой, как retpoline, потому что IBRS защищает и пространство пользователя? Как я могу заставить ядро использовать IBRS?
См. wiki spectreAndMeltdown / MitigationControls по этому вопросу
Во время выполнения:
echo 0 > /proc/sys/kernel/ibrs_enabled
отключится. IBRS
echo 1 > /proc/sys/kernel/ibrs_enabled
включится IBRS в ядре
echo 2 > /proc/sys/kernel/ibrs_enabled
включит IBRS как в пользовательском пространстве, так и в ядре.
Для проверки использования изменений
sysctl -a|grep ibrs
Все сделано после выполнения sudo -i и не используется обычное sudo.
Затем проверьте, обновлен ли ваш инструмент отчетности.
Но зачем вообще что-то делать? Средства массовой информации взорвались таким образом из пропорции, и в вашей системе должно быть намного больше ошибок, чтобы кто-то мог злоупотреблять этим. Здравый смысл должен преобладать над паранойей.
См. wiki spectreAndMeltdown / MitigationControls по этому вопросу
Во время выполнения:
echo 0 > /proc/sys/kernel/ibrs_enabled
отключится. IBRS
echo 1 > /proc/sys/kernel/ibrs_enabled
включится IBRS в ядре
echo 2 > /proc/sys/kernel/ibrs_enabled
включит IBRS как в пользовательском пространстве, так и в ядре.
Для проверки использования изменений
sysctl -a|grep ibrs
Все сделано после выполнения sudo -i и не используется обычное sudo.
Затем проверьте, обновлен ли ваш инструмент отчетности.
Но зачем вообще что-то делать? Средства массовой информации взорвались таким образом из пропорции, и в вашей системе должно быть намного больше ошибок, чтобы кто-то мог злоупотреблять этим. Здравый смысл должен преобладать над паранойей.
См. wiki spectreAndMeltdown / MitigationControls по этому вопросу
Во время выполнения:
echo 0 > /proc/sys/kernel/ibrs_enabled
отключится. IBRS
echo 1 > /proc/sys/kernel/ibrs_enabled
включится IBRS в ядре
echo 2 > /proc/sys/kernel/ibrs_enabled
включит IBRS как в пользовательском пространстве, так и в ядре.
Для проверки использования изменений
sysctl -a|grep ibrs
Все сделано после выполнения sudo -i и не используется обычное sudo.
Затем проверьте, обновлен ли ваш инструмент отчетности.
Но зачем вообще что-то делать? Средства массовой информации взорвались таким образом из пропорции, и в вашей системе должно быть намного больше ошибок, чтобы кто-то мог злоупотреблять этим. Здравый смысл должен преобладать над паранойей.