Страница руководства для jail
Говорит, что allow.sysvipc
позволяет «примитивам System V [совместно] использовать единое пространство имен в среде хоста и тюрьмы ...» таким образом, «... процессы в тюрьме смогут взаимодействовать с ... процессами за пределами тюрьмы и в других тюрьмах. . "
Каковы практические последствия этого для безопасности? Самая крайняя интерпретация будет означать, что при использовании этой опции эффективная безопасность во всей инфраструктуре тюрьмы невысока. (Если процессы могут вмешиваться и взаимодействовать с другими процессами на хосте и других тюрьмах, тогда зачем вообще беспокоиться о тюрьме?)
Итак, крайняя интерпретация оказывается верный. Разрешение sysvipc "... победить саму цель тюрьмы; привилегированные пользователи из тюрьмы смогут влиять на процессы за пределами тюрьмы."
ОБНОВЛЕНИЕ 3 августа 2010 г .: После некоторых случайных исследований я смог уточнить некоторые детали. Проблема связана с тем, что разрешения процесса основаны на UID (обратите внимание, что это означает число, а не строковый идентификатор). Таким образом, несмотря на то, что пользовательские пространства для хоста и тюрьмы разделены между собой, это разделение не является жестким, и, учитывая, что UID этого корня равен 0, мы получаем цитату выше. Некоторые варианты минимизации риска: