Путаница с разрешениями php-fpm в SELinuxPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Путаница с разрешениями php-fpm в SELinux

Сообщение Anonymous »

Недавно я установил сервер Fedora 44 в домашней лаборатории. Я запустил на нем Apache и установил php и php-fpm. Я добавил /var/www/html веб-сайт PHP (SPIP).
Все файлы и папки веб-сайта принадлежат пользователю apache и имеют контекст безопасности system_u:object_r:httpd_sys_content:s0, за исключением нескольких папок, которые имеют контекст system_u:object_r:httpd_sys_rw_content:s0.
Я хотел проверить, действительно ли SELinux ограничивает действия злоумышленника на случай худшего. Чтобы проверить это, я поместил простую веб-оболочку в основание папки /var/www/html. Он вызывает систему функций PHP, передавая в качестве аргумента все, что вы отправили в веб-оболочку. Веб-оболочка имеет тот же контекст безопасности, что и другие файлы.
К моему удивлению, веб-оболочка работает без сбоев, я могу вызывать двоичные файлы, такие как Sleep или Touch. Я просмотрел дерево процессов и заметил, что когда команда отправляется в веб-оболочку, один из процессов php-fpm, работающий в домене httpd_t, имеет дочерний процесс, выполняющий sh -c -- , также в домене httpd_t.
Мой вопрос: как это возможно? Я ожидал, что эта веб-оболочка полностью выйдет из строя, поскольку процесс в домене httpd_t не может выполнять файлы типа bin_t. Так как же php-fpm может запустить двоичный файл /bin/sh, принадлежащий этому типу? Чего мне не хватает?
РЕДАКТИРОВАТЬ: SELinux — далеко не единственный инструмент, который я мог бы использовать для усиления защиты этого веб-приложения. Однако причина, по которой я создал эту лабораторию, заключается именно в том, чтобы протестировать функции SELinux и научиться их использовать, поэтому проблема для меня на самом деле состоит в том, чтобы понять, какой механизм SELinux я пропустил.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»