есть файл /usr/sbin/suexec с атрибутами root/apache -r-s--x--- по идее Суекзек позволятет запустить скрипт с правами рута. Пробовал, но толком ничего не вышло, есть ли в этом смысл ? Результат выполнения команды suexec -V bash-2.05b$ bash-2.05b$ suexec -V -D AP_DOC_ROOT="/var/www" -D AP_GID_MIN=100 -D AP_HTTPD_USER="apache" -D AP_LOG _EXEC="/var/log/httpd/suexec.log" -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin" -D AP_UID_MIN=500 -D AP_USERDIR_SUFFIX="public_html" /var/log/httpd -read, write рут онли! есть права на запись в /var/www uid и gid апача 48 LoadModule suexec_module modules/mod_suexec.so модуль подключен в конфиге апача.
Выполняю sudo -l В ответ просят пасс, но дело даже не в пароле. я не успеваю ничего ввести как автоматом выхожу из под этой команды. Выглядит это так bash-2.05b$ bash-2.05b$ sudo -u root ls Password:4654 bash-2.05b$ bash: 4654: command not found bash-2.05b$ bash-2.05b$ я просто не успеваю ему пароль передать =\ как быть? юзаю перловый бекдор от RST
хм. если судо и установлен и сконфигурирован.. то хм. даже не знаю. попробуй сначала добавить себя в /etc/sudoers .. если конечно тебя нет. а если есть, то хз если честно если не успеваешь.. попробуй баш скрипт накатать..
# sudoers file. # # This file MUST be edited with the 'visudo' command as root. # # See the sudoers man page for the details on how to write a sudoers file. # # Host alias specification # User alias specification # Cmnd alias specification # Defaults specification # User privilege specification root ALL=(ALL) ALL # Uncomment to allow people in group wheel to run all commands # %wheel ALL=(ALL) ALL # Same thing without a password # %wheel ALL=(ALL) NOPASSWD: ALL # Samples # %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom # %users localhost=/sbin/shutdown -h now апача впомине нету, отредактировать не могу, т.к не имею соответствующих прав. Возвращаясь к suexec, реально ли запускать/исполнять файло от рута? Быть может со скриптом поможешь?
>>есть файл /usr/sbin/suexec с атрибутами root/apache -r-s--x--- >>по идее Суекзек позволятет запустить скрипт с правами рута. Пробовал, но толком >>ничего не вышло, есть ли в этом смысл ? обычно он используется наоборот для понижения прав функциями setuid и setgid. а зачем тебе вообще запускать скрипт от рута? если есть такая необходимость посмотри еще раз httpd.conf с директивой virtualhosts для этого сайта, там должен быть указан user как рут и группа соответствующая супер-пользователю.
Не спорю, но при неправильном конфигурировании это может вызвать серьезные проблемы в безопасности, вот я и хочу проверить. в virtualhosts поля user как таковые выбще отсутствуют
ну так почитать сначала про suexec нужно было. пропиши в директиву .. User username Group groupname ... необходимые id для setuid, setgid возьмутся из /etc/passwd а по дефолту, видимо, права до пользователя апача падают. >>Не спорю, но при неправильном конфигурировании это может вызвать серьезные проблемы в безопасности, я и написал, что запускать от рута не стоит.