В инструментарии управления изолированными контейнерами LXC выявлена (http://openwall.com/lists/oss-security/2016/11/23/6) уязвимость (CVE-2016-8649 (https://security-tracker.debian.org/tracker/CVE-2016-8649)), позволяющая (https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/1639345) при наличии прав root внутри непривилегированного контейнера (работающего в отдельном user namespace) получить доступ к файлам хост-системы и выполнить свой код вне изолированного окружения.Атака может быть совершена при запуске в контейнере процессов при помощи утилиты lxc-attach. Пользователь root в контейнере имеет возможность влиять на работу утилиты lxc-attach, что, в сочетании с достаточно просто достигаемым состоянием гонки (https://ru.wikipedia.org/wiki/%D0%A1%D0%... при выполнении lxc-attach, может привести к отключению ограничений и получению доступа к хост-системе. Уязвимость охватывает две проблемы: использование в lxc-attach данных из источников, подконтрольных пользователю контейнера, и возможность применения вызова ptrace для экземпляров lxc-attach, созданных в другом пространстве пользователей (root из контейнера может получить доступ к процессу, созданному во внешнем user namespace).
В частности, lxc-attach оставляет открытым файловый дескриптор к одному из файлов /proc на стороне хост-системы, что позволяет атакующему получить чего него доступ к остальным частям файловой системы, используя системные вызовы семейства openat(). В том числе через файловый дескриптор могут быть записаны данные в файлы /proc/PID/attr/current или /proc/PID/attr/exec на стороне хост-системы для установки меток AppArmor и SELinux к прикреплённому процессу, что даёт возможность отключить сброс привилегий для процесса, запускаемого при помощи lxc-attach.
Уязвимость уже устранена в Ubuntu Linux (https://www.ubuntu.com/usn/usn-3136-1/) и ожидает исправления в Debian (https://security-tracker.debian.org/tracker/CVE-2016-8649), RHEL/CentOS (https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-8649), Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=1398243), Fedora EPEL (https://bugzilla.redhat.com/show_bug.cgi?id=1398245) и SUSE/openSUSE (https://bugzilla.novell.com/show_bug.cgi?id=CVE-2016-8649). Патч (https://github.com/lxc/lxc/commit/81f466d05f2a89cb4f122ef7f5... для блокирования уязвимости принят в дерево исходных текстов LXC, но для полного устранения возможных альтернативных векторов атаки также требуется внесение исправлений (https://lists.linuxfoundation.org/pipermail/containers/2016-... в ядро Linux для реализации проверки прав доступа к ptrace с учётом user namespace.
URL: http://openwall.com/lists/oss-security/2016/11/23/6
Новость: http://www.opennet.ru/opennews/art.shtml?num=45573