如何保护服务器免受 Dirty COW Linux 漏洞攻击

介绍

2016 年 10 月 19 日,Linux 内核中出现了一种特权升级漏洞,该漏洞被称为 Dirty COW,因为其潜在问题是内核处理 copy-on-writing(COW)的方式的一种竞争条件。

利用此错误意味着您的服务器上的常规,无特权用户可以获得可读的任何文件的写入,因此可以增加系统上的权限。

幸运的是,大多数主要的发行版已经发布了一项修复。DigitalOcean上的所有基图像都更新了,包括了修补的内核版本,所以您创建的未来Dropplets将不需要更新。

检查脆弱性

Ubuntu 和 Debian

要确定您的服务器是否受到影响,请检查您的内核版本。

1uname -rv

你会看到这样的输出:

1[secondary_label Output]
24.4.0-42-generic #62-Ubuntu SMP Fri Oct 7 23:11:45 UTC 2016

如果您的版本早于下列版本,您会受到影响:

  • 4.8.0-26.28 for Ubuntu 16.10 4.4.0-45.66* for Ubuntu 16.04 LTS
  • 3.13.0-100.147 for Ubuntu 14.04 LTS
  • 3.2.0-113.155 for Ubuntu 12.04 LTS
  • 3.16.36-1+deb8u2 for Debian 8
  • 3.2.82-1 for Debian 7
  • 4.7.8-1 for Debian unstable

百度

某些版本的 CentOS 可以使用 此脚本由 RedHat for RHEL 提供来测试您的服务器的漏洞。

1wget https://access.redhat.com/sites/default/files/rh-cve-2016-5195_1.sh

然后用bash运行它。

1bash rh-cve-2016-5195_1.sh

如果你是脆弱的,你会看到这样的输出:

1[secondary_label Output]
2Your kernel is 3.10.0-327.36.1.el7.x86_64 which IS vulnerable.
3Red Hat recommends that you update your kernel. Alternatively, you can apply partial
4mitigation described at https://access.redhat.com/security/vulnerabilities/2706661 .

修复脆弱性

幸运的是,应用修复很简单:更新您的系统并重新启动您的服务器。

在Ubuntu和Debian上,使用apt-get升级您的软件包。

1sudo apt-get update && sudo apt-get dist-upgrade

您可以在 CentOS 5, 6 和 7 上更新所有软件包,但如果您只想更新内核以解决此问题,请运行:

1sudo yum update kernel

在具有外部内核管理的较旧 Droplets 上,您还需要选择 DigitalOcean GrubLoader 内核。 要做到这一点,请前往 控制面板,点击您想要更新的服务器。 然后,在左侧菜单中点击 Kernel,然后选择 GrubLoader 内核。 您可以在 此内核管理教程中了解有关更新您的 Droplet 内核的更多信息。

最后,在所有发行版中,您需要重新启动服务器来应用这些更改。

1sudo reboot

结论

请确保更新您的Linux服务器,以免受到这个特权升级错误的保护。

Published At
Categories with 技术
comments powered by Disqus