Затронуты все версии до следующих версий:
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
Если вам нужно протестировать свою систему, вы можете загрузить и скомпилировать PoC:
curl https://raw.githubusercontent.com/dirtycow/dirtycow.github.io/master/dirtyc0w.c > dirtyc0w.c
От имени root создайте foo
файл:
sudo -s
echo This is a TEST > foo
Проверить это:
ls -l foo
Как пользователь запустить:
gcc -pthread dirtyc0w.c -o dirtyc0w
./dirtyc0w foo m00000000000000000
Проверить, изменен ли файл foo
:
Если вы получите следующее:
cat foo
:
m00000000000000000
Вы Уязвимы.
Если ваш файл не изменился: Это ТЕСТ
>> вы в безопасности.
Чтобы исправить вашу систему, просто запустите:
sudo apt-get update && sudo apt-get dist-upgrade
Вероятно, вам нужно переустановить VirtualBox. Интерфейсы vboxnet
обрабатываются модулем ядра. Либо обновление не перестроило этот модуль (, что маловероятно, если у вас установлен VirtualBox через обычные репозитории Fedora ), либо конфигурация, из-за которой он загружался при загрузке (, или иным образом автоматически )была удалена. Я не уверен на 100%, где находится конфигурация для загрузки в Fedora, но переустановка должна решить любую проблему.
Я нашел обходной путь (источник:https://unix.stackexchange.com/a/261559/243160)который работает для меня:
workstation ~ $ sudo ip link set vboxnet0 up
workstation ~ $ sudo ip link set vboxnet1 up
Тогда ifconfig
корректно отображает интерфейсы, и я могу пинговать с рабочей станции на VB и наоборот:
workstation ~ $ ifconfig
vboxnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
vboxnet1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
К сожалению, это непостоянно (после перезагрузки снова возникает эта проблема, и мне нужно выполнить ее снова ), поэтому, пока я не найду правильное решение, я написал сценарий для его выполнения после загрузки. Кроме того, это решение не работает так, как я хочу, отображая интерфейсы в графическом интерфейсе NetworkManager, как раньше.
Я поместил его в отдельный ответ, потому что он частично решает проблему и, возможно, помогает другим.
Спасибо, очень помогло. Я также начал сталкиваться с проблемой после обновления до Fedora 26. Запуск vboxnet0 вручную решил проблемы с пингом к гостю с хоста.
Хост :Федора 26 Гость :Lubuntu (Адаптер 1 :Только хост, адаптер 2 :NAT)
Это известная проблема в 5.1.24 , исправленная в 5.1.25. Переустановка (и перезагрузка, а также повторное развертывание коробки Vagrant в моем случае )не работает , а не . Обходной путь состоит в том, чтобы запустить следующее на хосте (для каждого хоста -только в сети):
sudo ip link set vboxnet0 up