Набор AIX LIBPATH и STICKY BIT - PullRequest
       4

Набор AIX LIBPATH и STICKY BIT

2 голосов
/ 24 ноября 2010

У меня есть исполняемый файл, который нормально работает. Он загружает общую библиотеку. и я устанавливаю LIBPATH перед запуском этого exe. Теперь, если я изменю разрешение exe на принадлежащий root и установлю sticky bit, то он не сможет загрузить общую библиотеку. Если я создаю ссылку в / usr / lib на разделяемую библиотеку, все работает нормально.

Любая причина и решение этой проблемы.

1 Ответ

6 голосов
/ 24 ноября 2010

Это функция безопасности - LIBPATH из вашей пользовательской среды не используется при запуске чего-либо с установленным битом закрепления.Если это позволило вам использовать пользовательский набор LIBPATH для исполняемого файла с установленным suid, кто-то может загрузить вредоносную библиотеку для взлома системы.

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

Возможные решения

1 - Одно из решений - предоставить пользователю sudo привилегия для выполнения этой команды, в этом случае вы можете сделать что-то вроде ...

sudo LIBPATH="..." executable

2 - Другое решение заключается в создании сценария оболочки, который устанавливает LIBPATH изатем запускает исполняемый файл и устанавливает липкий бит в вашем скрипте оболочки, как это ...

#/bin/sh

LIBPATH="/whatever/path" /path/to/executable
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...