17 Spectre/Meltdown Checker #
spectre-meltdown-checker
是一个外壳脚本,用于测试您的系统是否容易受到多种推测执行漏洞的影响,这些漏洞在过去 20 年制造的所有 CPU 中普遍存在。这是一种硬件缺陷,攻击者可能会利用它来读取系统上的所有数据。在云计算服务中,如果多个虚拟机位于一台物理主机上,攻击者可以获取对所有虚拟机的访问权限。修复这些漏洞需要重新设计并更换 CPU。在采取此措施之前,可以通过多个软件补丁来缓解这些漏洞。如果您经常在更新 SUSE 系统,应该已安装了所有这些补丁。
spectre-meltdown-checker
会生成详细的报告。它不能为您的系统提供安全保证,但会显示采取了哪些缓解措施以及潜在的漏洞。
17.1 使用 spectre-meltdown-checker
#
安装该脚本,然后不指定任何选项以 root 身份运行它:
#
zypper in spectre-meltdown-checker#
spectre-meltdown-checker.sh
您将看到如图 17.1 “spectre-meltdown-checker 的输出”中所示的彩色输出:
spectre-meltdown-checker.sh --help
会列出所有选项。此命令可用于将非彩色纯文本输出导出到文件中:
#
spectre-meltdown-checker.sh --no-color| tee filename.txt
上述示例是在运行中的系统上执行的情况,这是此脚本的默认运行方式。您也可以指定内核、配置和 System.map 文件的路径来脱机运行 spectre-meltdown-checker
:
#
cd /boot#
spectre-meltdown-checker.sh \ --no-color \ --kernel vmlinuz-4.12.14-lp151.28.13-default \ --config config-4.12.14-lp151.28.13-default \ --map System.map-4.12.14-lp151.28.13-default| tee filename.txt
其他有用的选项如下:
- --verbose、-v
提高详细程度;重复指定可以不断提高详细程度,例如
-v -v -v
- --explain
列显直观易懂的说明
- --batch [short] [json] [nrpe] [prometheus]
以各种机器可读格式设置输出格式
spectre-meltdown-checker.sh --disclaimer
提供有关该脚本能够和不能提供的功能的重要信息。
17.2 更多信息 #
有关详细信息,请参见以下参考:
SUSE 知识库文章 #7022937 Security Vulnerability: Spectre Variant 4 (Speculative Store Bypass) aka CVE-2018-3639(安全漏洞:Spectre 变体 4(推测储存绕过),又称 CVE-2018-3639):https://www.suse.com/support/kb/doc/?id=7022937
GitHub 上的 speed47/spectre-meltdown-checker 源代码,包括相关公共漏洞和暴露 (CVE) 的详细参考:https://github.com/speed47/spectre-meltdown-checker
SUSE 博客文章 Meltdown and Spectre Performance(Meltdown 和 Spectre 性能):https://www.suse.com/c/meltdown-spectre-performance/
SUSE 知识库文章 #7022512,其中提供了有关体系结构、CVE 和缓解措施的信息:https://www.suse.com/support/kb/doc/?id=7022512