Уязвимости во FreeBSD, позволяющие обойти ограничения jail-окружений

В развиваемой проектом FreeBSD системе изолированных окружений jail выявлены две уязвимости:

  • CVE-2020-25582 – уязвимость в реализации системного вызова jail_attach, предназначенного для прикрепления внешних процессов к существующим jail-окружениям. Проблема проявляется во время вызова jail_attach при помощи команд jexec или killall, и позволяет привилегированному процессу, изолированному внутри jail, изменить свой корневой каталог и получить полный доступ ко всем файлам и каталогам в системе.
  • CVE-2020-25581 – состояние гонки при удалении процессов при помощи системного вызова jail_remove, позволяет запущенному внутри jail привилегированному процессу избежать удаления при завершении работы jail и получить полный доступ к системе через devfs при при последующем запуске jail с тем же корневым каталогом, воспользовавшись моментом, когда devfs уже примонтирован для jail, но правила изоляции ещё не применены.

Дополнительно можно отметить уязвимость (CVE-2020-25580) в PAM-модуле pam_login_access, отвечающем за обработку файла login_access, в котором определяются правила доступа пользователей и групп, применяемые при входе в систему (по умолчанию разрешён вход через консоль, sshd и telnetd). Уязвимость позволяет обойти ограничения login_access и осуществить вход, несмотря на наличие запрещающих правил.

Уязвимости устранены в ветках 13.0-STABLE, 12.2-STABLE и 11.4-STABLE, а также в корректирующих обновлениях FreeBSD 12.2-RELEASE-p4 и 11.4-RELEASE-p8.

Release. Ссылка here.