Ошибка в LSM-модуле Landlock позволяла заново получить сброшенные привилегии

Янн Хорн (Jann Horn) из команды Google Project Zero, в своё время выявивший уязвимости Spectre и Meltdown, нашёл логическую ошибку в реализации модуля безопасности Linux (LSM) Landlock, позволяющую программе получить обратно уже сброшенные привилегии, в случае наличии у программы доступа к системным вызовам fork() и keyctl().

Механизм Landlock позволяет непривилегированным программам сбрасывать ненужные для работы привилегии, добровольно ограничивая свой дальнейший доступ к системе в целях повышения безопасности, например, для защиты в случае попыток эксплуатации уязвимостей в программе. Например, программа может запретить себе доступ к файлам за пределами рабочего каталога.

Как обнаружил инженер Google, некоторые ситуации были не предусмотрены разработчиками модуля и это позволяет программе получить сброшенные привилегии заново при определённых условиях. Ошибка существует во всех версиях ядра с LSM-модулем Landlock, так как присутствует в изначальной реализации данного модуля. Исправление с устранением выявленной проблемы включено в состав сегодняшнего тестового выпуска ядра 6.11-rc1, но пока не перенесено в стабильные ветки.

Источник: http://www.opennet.ru/opennews/art.shtml?num=61619