针对Intel处理器芯片存在的Meltdown和Spectre安全漏洞,应该如何规避?
问题描述
北京时间1月3日,Intel处理器芯片被曝出存在严重的Meltdown和Spectre安全漏洞,漏洞详情如下:
漏洞名称:Intel处理器存在严重芯片级漏洞
漏洞编号:CVE-2017-5753、CVE-2017-5715、CVE-2017-5754
严重程度:高危
漏洞描述:CPU内核高危漏洞Meltdown(CVE-2017-5754)和Spectre(CVE-2017-5715/CVE-2017-5753)爆发,攻击者可利用这两组漏洞,绕过内存安全隔离机制,越权访问操作系统和其他程序的核心数据,造成敏感信息泄露。
问题影响
该漏洞不会引起不同弹性云服务器之间的攻击,但可能会引起如下问题:
- 弹性云服务器内多个应用之间,可能存在攻击。
- 对于同一弹性云服务器,多个账号之间可能存在攻击。
使用公共镜像的弹性云服务器,云平台会对公共镜像依次修复,不会对您的业务带来影响。
使用私有镜像的弹性云服务器,请根据漏洞影响评估是否更新补丁,以规避风险,更新补丁的具体操作请参见本节内容。
前提条件
为避免发生意外,修复漏洞前,建议进行充分测试,并完成弹性云服务器的数据备份操作,避免发生意外。
Windows弹性云服务器处理方法
Linux弹性云服务器处理方法
检测Linux操作系统安全漏洞是否已修复完成
- 单击spectre-meltdown-checker获取spectre-meltdown-checker.sh检测脚本。
- 将步骤1获取的脚本上传至云服务器。
- 在云服务器执行以下命令,并根据脚本提示判断Meltdown或Spectre漏洞是否已经修复。
chmod +x spectre-meltdown-checker.sh
sudo bash spectre-meltdown-checker.sh
回显信息如图3所示。
OK为已修复漏洞,KO为未修复,如图3所示代表CVE-2017-5753、CVE-2017-5715、CVE-2017-5754漏洞均已修复。
打开或关闭Linux操作系统的安全漏洞补丁开关
CPU的预测执行是一种性能优化技术,因此修复Meltdown或Spectre漏洞后可能导致在特定工作负载下的性能下降。
如果您认为漏洞修复对系统的性能影响不可接受或者系统有更好的保护机制,希望可以禁用部分或全部漏洞安全保护策略,那么可以参考以下操作启用或者禁用安全保护策略。
您可以根据如下具体情况配置系统来达到理想的安全策略:
- Meltdown漏洞
采取页表隔离pti(Page Table Isolation)来控制内核页表隔离功能,此功能适用于CVE-2017-5754。
- Spectre漏洞
采取间接分支限制预测ibrs(Indirect Branch Restricted Speculation)控制SPEC_CTRL模型特定寄存器(MSR)中的IBRS功能,结合retpoline,及间接分支预测障碍ibpb(Indirect Branch Prediction Barriers)控制PRED_CMD模型特定寄存器(MSR)中的IBPB功能,此功能适用于CVE-2017-5715。
CVE-2017-5753漏洞是通过内核补丁修复的,它无法禁用,并且它在Red Hat的性能测试中没有显示出任何可见的影响。
- 关闭Meltdown安全漏洞补丁
如果您想降低开启pti对系统的性能影响或者系统有更好的保护机制,您可以根据以下步骤操作:
- 根据不同的操作系统修改内核参数:
- CentOS、EulerOS、Ubuntu、Fedora、Red Hat:添加内核参数nopti
- Debian、OpenSUSE:添加内核参数pti=off
- 重启云服务器。
- 根据不同的操作系统修改内核参数:
- 关闭Spectre安全漏洞补丁
如果您认为Spectre漏洞修复对系统的性能影响不可接受或者系统有更好的保护机制,您可以根据以下步骤操作:
- 根据不同的操作系统修改内核参数:
- CentOS、EulerOS、Fedora、Debian、Red Hat、OpenSUSE:添加内核参数spectre_v2=off
- Ubuntu:添加内核参数nospectre_v2=off
- 重启云服务器。
- 根据不同的操作系统修改内核参数:
如果您使用的是以下操作系统,可以前往官网查询更多信息。
RedHat:https://access.redhat.com/articles/3311301?spm=a2c4g.11186623.2.20.42b49d4aJuKYx2
SUSE:https://www.suse.com/support/kb/doc/?spm=a2c4g.11186623.2.21.42b49d4avOXw7d&id=7022512
Ubuntu:https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown