Я использую Debian Jessie на сервере Xen и теперь меня беспокоит эта проблемаCVE-2016-10229:
udp.c в ядре Linux до версии 4.5 позволяет удаленным злоумышленникам выполнять произвольный код через трафик UDP, который запускает небезопасное вычисление второй контрольной суммы во время выполнения системного вызова recv с флагом MSG_PEEK.
Я хочу проверить, решена ли проблема на моем сервере и виртуальных машинах.
На Дом0:
$ uname -a
Linux xen-eclabs 4.5.0-1-amd64 #1 SMP Debian 4.5.1-1 (2016-04-14) x86_64 GNU/Linux
$ dpkg -l |grep linux-
ii linux-base 3.5 all Linux image base package
ii linux-image-3.16.0-4-amd64 3.16.39-1+deb8u2 amd64 Linux 3.16 for 64-bit PCs
ii linux-image-4.3.0-1-amd64 4.3.3-7 amd64 Linux 4.3 for 64-bit PCs
ii linux-image-4.5.0-1-amd64 4.5.1-1 amd64 Linux 4.5 for 64-bit PCs
ii linux-image-amd64 3.16+63 amd64 Linux for 64-bit PCs (meta-package)
ii xen-linux-system-4.3.0-1-amd64 4.3.3-7 amd64 Xen system with Linux 4.3 on 64-bit PCs (meta-package)
ii xen-linux-system-4.5.0-1-amd64 4.5.1-1 amd64 Xen system with Linux 4.5 on 64-bit PCs (meta-package)
ii xen-linux-system-amd64 4.5+72 amd64 Xen system with Linux for 64-bit PCs (meta-package)
На сайте говорится, что это исправлено в пакете под названием "linux", в jessie 3.16.39-1
Но что это за пакет "linux"? У меня этот пакет не установлен, просто называется "linux"?
Как я понимаю эту связь?
решение1
У вас установлены две версии ядра XEN Linux-enable, а именно 4.3.3-7 и 4.5.1-1, а также обычные ядра без поддержки XEN 3.16.0-4, 4.3.3-7 и 4.5.1-1.
Обычные пакеты ядра для amd64 (64-разрядные ПК) — linux-image*-amd64
, пакеты с поддержкой XEN — xen-linux-system*-amd64
.
Соответствующие пакеты XEN по вашему листингу:
xen-linux-system-4.3.0-1-amd64, 4.3.3-7
xen-linux-system-4.5.0-1-amd64, 4.5.1-1
Из вывода вашего запроса следует uname
, что версия 4.5 активна, а это значит, что вы не уязвимы.
Тем не менее, хотя в журналах ядра говорится, что проблема была исправлена в версии 4.5-rc1, если в журналах Debian указано, что уязвима только версия 3.16.39-1, это означает, что исправления были перенесены обратно в исходный код более старых версий, как это обычно и происходит.
Тем не менее, вы всегда можете удалить старую версию ядра с помощью команды:
sudo dpkg --purge xen-linux-system-4.3.0-1-amd64
решение2
uname -r
не показывает версию установленного ядра, а только"выпуск ядра"
с uname -v
вы видите установленныйверсия
(которая находится дальше справа в длинной строке в uname -a
)
Обновите ядра внутри виртуальных машин XEN.
В файлах конфигурации виртуальных машин /etc/xen/*.cfg
необходимо отредактировать параметры kernel
и ramdisk
в соответствии с новым ядром в Dom0.
Затем:
1.Один из них устанавливается вместе с Pygrub:
uname -v
#1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07)
так что человек уже в безопасности благодаря регулярномуapt-get upgrade
В виртуальных машинах без Pygrub мне пришлось выключить виртуальную машину и скопировать загрузочные файлы в /boot/
папку внутри виртуальной машины:
xl shutdown vmtest
mount /dev/vg0/vmtest-disk /mnt/
cp /boot/*4.5* /mnt/boot/
xen create /etc/xen/vmtest.cfg
3.
некоторые виртуальные машины не имели загрузочных файлов внутри /boot/
, там я ничего не делал, просто пересоздавал виртуальную машину