Как защититься от уязвимости Dirty COW



Несколько дней назад, а точнее 19 октября 2016 года была раскрыта 0-day уязвимость в ядре Linux, которая позволяет повышать привилегии пользователя. Баг назван "Грязная Корова" (Dirty COW), потому что основная проблема связана с тем, что запускалось так называемое состояние гонки в процессах работы подсистемы памяти ядра с механизмом copy-on-write (COW). Уязвимость существует уже давно, по крайней мере, с 2007 года с ядра версии 2.6.22, поэтому подавляющее большинство серверов находятся под угрозой.


Использование этой ошибки означает, что обычный, непривилегированный пользователь на сервере может получить доступ на запись для любого файла. Более подробную информацию можно найти на CVE-2016-5195 от , Red Hat и Debian.


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


Проверка уязвимости


Ubuntu / Debian


Узнайте подвержен ли ваш сервер этому багу, проверив версию ядра.



 uname -rv


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




4.4.0-42-generic #62-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 нестабильный (unstable)


CentOS


Если вы пользуетесь CentOS, вы можете использовать скрипт предоставленный RedHat, чтобы проверить уязвимость вашего сервера. Для этого сначала надо загрузить его:



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

Затем запустите его в bash.



 bash rh-cve-2016-5195_1.sh

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





Your kernel is 3.10.0-327.36.1.el7.x86_64 which is vulnerable.

Red Hat recommends that you update your kernel. Alternatively, you can apply partial

mitigation described at https://access.redhat.com/security/vulnerabilities/2706661 .

[Ваше ядро 3.10.0-327.36.1.el7.x86_64 является уязвимым. Red Hat рекомендует вам обновить ядро. В качестве альтернативы, можно применить частичную миграцию, описанную в https://access.redhat.com/security/vulnerabilities/2706661]


Исправление уязвимости


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


Ubuntu / Debian


Обновите системные пакеты с помощью apt-get.



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

Вам потребуется перезагрузить сервер, чтобы применить изменения.



 sudo reboot


RHEL / CentOS Linux 5.x/6.x/7.x



 sudo yum update

$ sudo reboot

RHEL / CentOS Linux 4.x



 sudo up2date -u

$ sudo reboot

Suse Enterprise Linux или Opensuse


Чтобы применить все необходимые патчи для данной системы:

 zypper patch

# reboot

Проверка


Вам нужно убедиться, что версия вашего ядра изменилась:

 uname -a

$ uname -r

$ uname -mrs

Вывод


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



Добавить комментарий

Автору будет очень приятно получить обратную связь.

Комментариев 0