Как защитить ваш сервер от уязвимости в Cirty Linux COW

Вступление

19 октября 2016 года была раскрыта уязвимость повышения привилегий в ядре Linux. Ошибка называется Dirty COW, потому что основной проблемой было условие гонки в том, как ядро ​​обрабатывает копирование при записи (COW). Грязная COW существует в течение длительного времени - по крайней мере, с 2007 года, с версией ядра 2.6.22 - так что подавляющее большинство серверов находятся в опасности.

Использование этой ошибки означает, что обычный непривилегированный пользователь на вашем сервере может получить доступ на запись в любой файл, который он может прочитать, и, следовательно, может повысить свои привилегии в системе. Дополнительную информацию о CVE-2016-5195 можно найти по адресу Canonical, https: //access.redhat. com / security / cve / CVE-2016-5195 [Red Hat] и Debian.

К счастью, большинство крупных дистрибутивов уже выпустили исправление. Все базовые образы на DigitalOcean были обновлены и теперь включают исправленные версии ядра, поэтому будущие создаваемые дроплеты обновлять не нужно. Однако, если вы используете старый сервер, вы можете следовать этому руководству, чтобы убедиться, что вы защищены.

Проверьте Уязвимость

Ubuntu / Debian

Чтобы узнать, затронут ли ваш сервер, проверьте версию вашего ядра.

uname -rv

Вы увидите вывод так:

Output-Ubuntu SMP Fri Oct 7 23:11:45 UTC 2016

Если ваша версия более ранняя, чем указано ниже, это влияет на вас:

  • * 4.8.0-26.28 * для Ubuntu 16.10

  • * 4.4.0-45.66 * для Ubuntu 16.04 LTS

  • * 3.13.0-100.147 * для Ubuntu 14.04 LTS

  • * 3.2.0-113.155 * для Ubuntu 12.04 LTS

  • * 3.16.36-1 + deb8u2 * для Debian 8

  • * 3.2.82-1 * для Debian 7

  • * 4.7.8-1 * для нестабильной версии Debian

CentOS

Некоторые версии CentOS могут использовать thiscript, предоставленный RedHat для RHEL, для проверки уязвимости вашего сервера. Чтобы попробовать, сначала скачайте скрипт.

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

Затем запустите его с помощью + bash +.

bash rh-cve-2016-5195_1.sh

Если вы уязвимы, вы увидите такой результат:

Output
Red Hat recommends that you update your kernel. Alternatively, you can apply partial
mitigation described at https://access.redhat.com/security/vulnerabilities/2706661 .

Исправить уязвимость

К счастью, применить исправление несложно: обновите систему и перезагрузите сервер.

В Ubuntu и Debian обновите ваши пакеты, используя + apt-get.

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

Вы можете обновить все ваши пакеты в CentOS 5, 6 и 7 с помощью + sudo yum update +, но если вы хотите обновить ядро ​​только для устранения этой ошибки, запустите:

sudo yum update kernel

В старых Droplets с внешним управлением ядром вам также необходимо выбрать ядро ​​DigitalOcean GrubLoader. Для этого перейдите на панель control, нажмите на сервер, который вы хотите обновить. Затем нажмите * Kernel * в меню слева и выберите ядро ​​GrubLoader. Вы можете узнать больше об обновлении ядра вашего Droplet в this учебник по управлению ядром. Более новые капли с внутренним управлением ядром могут пропустить этот шаг.

Наконец, во всех дистрибутивах вам необходимо перезагрузить сервер, чтобы изменения вступили в силу.

sudo reboot

Заключение

Обязательно обновите серверы Linux, чтобы они были защищены от этой ошибки повышения привилегий.

Related