保护您的服务器免受 Meltdown 和 Spectre 漏洞的影响

已发表: 2018-01-16

您可能不知道世界上大多数计算机处理器都容易受到 Meltdown 和 Spectre 漏洞的影响。 什么是 Meltdown 和 Spectre,您应该如何保护您的服务器? 在本文中,我们将看看这些漏洞,并讨论受影响的主要硬件供应商。 最重要的是,我们将解释您应该在 Windows 和 Linux 服务器上采取哪些步骤来保护您的数据。

让我们潜入吧!

什么是 Meltdown 和 Spectre 漏洞?

Meltdown 和 Spectre 是计算机处理器中的严重漏洞。 它们允许程序在运行时泄漏信息,从而使黑客可以使用该信息。 现代计算机系统的设置使得程序无法访问其他程序的数据,除非用户明确允许这种情况发生。 Meltdown 和 Spectre 漏洞使攻击者可以在未经用户许可的情况下(通常在用户不知情的情况下)访问程序数据。 这意味着攻击者可能会访问您的个人照片、电子邮件、您存储在浏览器密码管理器中的任何密码、即时消息、公司文件、纳税申报表等。

Meltdown允许任何应用程序访问整个系统内存。 需要操作系统补丁和固件更新来缓解此漏洞。

为什么叫熔断?
此漏洞“融化”了为保护您的敏感信息而设置的安全边界。

另一方面, Spectre允许一个应用程序强制另一个应用程序访问其内存的某些部分。 这个漏洞比 Meltdown 更难利用,但也更难缓解。

为什么叫幽灵?
该名称基于作为漏洞根本原因的进程“推测执行”。 (另外,因为它很难修复并且会困扰我们一段时间!)

哪些硬件供应商受到影响?

英特尔的核心架构和 AMD 处理器受影响最大。 但是,这些漏洞有 131 多家受影响的供应商。

哪些设备会受到 Meltdown 的影响?
台式机、笔记本电脑和云计算机都受到 Meltdown 的影响。 除了 Intel Itanium 和 Atom 之外,1995 年之后制造的所有使用推测执行的 Intel 处理器都可能受到影响。 2013 年之后制造的安腾和 Atom 处理器不受 Meltdown 的影响。

Spectre 会影响哪些设备?
Spectre 影响台式机、笔记本电脑、云服务器和智能手机。 所有现代处理器都可能受到 Spectre 漏洞的影响。 Spectre 已在 Intel、AMD 和 ARM 处理器上得到确认。

如何保护您的 Windows 服务器免受 Meltdown 和 Spectre 漏洞的影响?

检查您的 Windows 系统是否易受攻击非常重要。 如果是,您将需要采取行动。 我们为您提供分步说明,让您轻松上手。

如何检查您的 Windows 服务器是否受到这些漏洞的保护?

  1. 登录到您的服务器并以管理员身份运行Windows PowerShell并运行以下命令:
     安装模块推测控制

  2. 键入“ Y ”并按 Enter 以启用 NuGet 提供程序。
  3. 如果系统询问您是否要从不受信任的来源安装软件包,请键入“ Y ”并按 Enter - 这很好!
  4. 运行以下命令保存当前的执行策略。
     $SaveExecutionPolicy = 获取执行策略
  5. 运行以下命令以确保您可以在下一步中导入模块。
     Set-ExecutionPolicy RemoteSigned -Scope Currentuser
  6. 键入“ Y ”并按 Enter 确认执行策略更改。
  7. 运行以下命令导入 SpeculationControl 模块。
     导入模块推测控制
  8. 最后,运行以下命令以确保您的设备具有必要的更新。
     获取 SpeculationControlSettings 

您将能够查看您的服务器是否仍然容易受到 Meltdown 和 Spectre 安全漏洞的攻击。 此屏幕截图显示了一个未受保护的 Windows 系统。

如何保护您的 Windows 服务器免受这些漏洞的影响?

Microsoft 与 CPU 供应商合作并发布了重要的安全更新。 您将需要:

  1. 安装所有安全更新。
  2. 应用来自 OEM 设备制造商的适用固件更新。

当您检查 Windows 更新时,您可能无法获得 2018 年 1 月发布的安全更新。为了获得这些更新,您需要在虚拟服务器上添加以下注册表项:

键 = “HKEY_LOCAL_MACHINE”子键 = “SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat” 值 =”cadca5fe-87d3-4b96-b7fb-a231484277cc”
类型= “REG_DWORD”
数据= “0x00000000”

添加此注册表项后,重新启动服务器。 系统再次启动后,检查更新。 安装所有新更新并再次重新启动服务器。

您还需要确保已安装以下安全补丁:

Windows Server,版本 1709(服务器核心安装)– 4056892
Windows 服务器 2016 – 4056890
Windows Server 2012 R2 – 4056898
Windows Server 2008 R2 – 4056897

如果您仍然看到这些补丁没有安装,您可以从更新代码中提到的链接下载它们。

更新系统并应用 OEM 设备制造商提供的所需固件更新后,再次从 Windows PowerShell 运行以下命令以确保您的服务器安全:

$SaveExecutionPolicy = 获取执行策略
Set-ExecutionPolicy RemoteSigned -Scope Currentuser
导入模块推测控制
获取 SpeculationControlSettings
Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser 

你现在已经脱离危险区了! 此屏幕截图显示了一个受 Spectre 和 Meltdown 漏洞保护的 Windows 系统。

如何保护 Linux 服务器免受 Meltdown 和 Spectre 漏洞的影响?

因为这些漏洞是基于硬件的,所以几乎所有的 Linux 系统都会受到它们的影响。 许多 Linux 发行版已经发布了软件更新,通过禁用或解决导致漏洞的处理器行为来缓解 Meltdown 和 Spectre。 Linux 系统尚未完全修补。

以下是发布了部分缓解内核更新的 Linux 发行版列表:

  • CentOS 7:内核 3.10.0-693.11.6
  • CentOS 6:内核 2.6.32-696.18.7
  • Fedora 27:内核 4.14.11-300
  • Fedora 26:内核 4.14.11-200
  • Ubuntu 17.10:内核 4.13.0-25-generic
  • Ubuntu 16.04:内核 4.4.0-109-generic
  • Ubuntu 14.04:内核 3.13.0-139-generic
  • Debian 9:内核 4.9.0-5-amd64
  • Debian 8:内核 3.16.0-5-amd64
  • Debian 7:内核 3.2.0-5-amd64
  • Fedora 27 Atomic:内核 4.14.11-300.fc27.x86_64
  • CoreOS:内核 4.14.11-coreos

如果内核版本至少更新到上述版本,则已应用了一些更新。 FreeBSD 发行版,截至 2018 年 1 月 12 日,仍未发布任何内核更新。 Ubuntu 17.04 将于 2018 年 1 月 13 日达到 EOL(生命周期结束),并且不会收到任何更新。

以下是您可以采取的步骤来检查和修复 CentOS 7.x 中的 Spectre 和 Meltdown 漏洞。

要检查漏洞,请运行以下命令:

  1. 检查当前的操作系统版本。
    lsb_release -d
  2. 检查当前内核版本。
    unname -a
  3. 检查系统是否易受攻击。
    光盘 /tmp
    wget https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh
    sudo sh spectre-meltdown-checker.sh

    上面的截图是 CentOS 7.x 的输出,当它没有修复 Meltdown/Spectre 漏洞时。

  4. 您需要运行以下命令来安装新补丁。
    须藤百胜更新
  5. yum更新的主要原因是我们需要更新内核版本。 安装补丁后,使用以下命令重新启动。
    重启
  6. 一旦您的计算机再次启动,您可以使用以下命令再次检查漏洞。
    sudo sh spectre-meltdown-checker.sh

    您可以看到此屏幕截图显示 Spectre Variant 1 和 Meltdown 不存在漏洞。

结论

Meltdown 和 Spectre 是严重的漏洞。 它们继续被利用,其损害的总体影响尚未确定。

我们强烈建议您使用最新的操作系统和供应商发布的最新固件更新为您的系统打补丁。