The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"как запретить владельцам VirtualHost в PHP команду passthru ..."
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от andy_av Искать по авторуВ закладки on 17-Фев-04, 13:33  (MSK)
Как пользователям виртуальных хостов запретить исполнение в PHP команд passthru, system, exec - посредством которых они могут давать элементарно "ls ./../../../../" и затем "cat ./../../../../.conf", да и вообще любые юниксовые команды?

Люди, помогите!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от dev emailИскать по авторуВ закладки on 17-Фев-04, 15:18  (MSK)
http://strict.spb.ru/php4unix.html
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от andy_av Искать по авторуВ закладки on 17-Фев-04, 19:32  (MSK)
>http://strict.spb.ru/php4unix.html

Ага, там предлагается сделать

disable_functions=system

в php.ini. Тогда уж и

disable_functions=exec
disable_functions=passthru

Но вопрос в том, что для админского VirtualHost надо бы их разрешить, а для остальных запретить. Такое возможно вообще-то?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от dev emailИскать по авторуВ закладки on 17-Фев-04, 22:24  (MSK)
>>http://strict.spb.ru/php4unix.html
>
>Ага, там предлагается сделать
>
>disable_functions=system
>
>в php.ini. Тогда уж и
>
>disable_functions=exec
>disable_functions=passthru

Нет, достаточно только приведенной в статье строчки. Проверь.

>Но вопрос в том, что для админского VirtualHost надо бы их разрешить,
>а для остальных запретить. Такое возможно вообще-то?

Настройки можно задавать для каждого виртуального хоста отдельно.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "как одному разрешить, а другому запретить"
Сообщение от andy_av Искать по авторуВ закладки on 18-Фев-04, 16:00  (MSK)
>>disable_functions=system
>>
>>Но вопрос в том, что для админского VirtualHost надо бы их разрешить,
>>а для остальных запретить. Такое возможно вообще-то?
>
>Настройки можно задавать для каждого виртуального хоста отдельно.

Вот я и спрашиваю - как ДЛЯ ОДНОГО виртуального хоста разрешить выполнение system(), а для ДРУГОГО - закрыть? Что и где я должен прописать, подскажи плз.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "как одному разрешить, а другому запретить"
Сообщение от dev emailИскать по авторуВ закладки on 18-Фев-04, 16:10  (MSK)
>Вот я и спрашиваю - как ДЛЯ ОДНОГО виртуального хоста разрешить выполнение
>system(), а для ДРУГОГО - закрыть? Что и где я должен
>прописать, подскажи плз.

Ну в одном виртуальном хосте напишешь disable_functions=system, а в другом не напишешь.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "как одному разрешить, а другому запретить"
Сообщение от andy_av Искать по авторуВ закладки on 18-Фев-04, 16:16  (MSK)
>>Вот я и спрашиваю - как ДЛЯ ОДНОГО виртуального хоста разрешить выполнение
>>system(), а для ДРУГОГО - закрыть? Что и где я должен
>>прописать, подскажи плз.
>
>Ну в одном виртуальном хосте напишешь disable_functions=system, а в другом не напишешь.

Не понял... Ведь disable_functions= прописывается в php.ini, а он - для всех один. Или можно указать disable_functions= в настройках самого apache в VirtualHost ? Каким образом ?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "как одному разрешить, а другому запретить"
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 09:54  (MSK)
>один. Или можно указать disable_functions= в настройках самого apache в VirtualHost
>? Каким образом ?

Хм... .htaccess ?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "как одному разрешить, а другому запретить"
Сообщение от andy_av Искать по авторуВ закладки on 19-Фев-04, 14:14  (MSK)
>>один. Или можно указать disable_functions= в настройках самого apache в VirtualHost
>>? Каким образом ?
>
>Хм... .htaccess ?

И как конкретно, интересно?
Кроме того, насколько я знаю, то, что можно прописать в  .htaccess можно указать и сразу в конфигах апача. Но вот вопрос - что именно можно указать?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "как одному разрешить, а другому запретить"
Сообщение от Xela emailИскать по авторуВ закладки on 19-Фев-04, 15:28  (MSK)
как говориться, man google :)


http://www.evolt.org/article/Make_your_PHP_code_portable/17/28117/

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "как одному разрешить, а другому запретить"
Сообщение от dev emailИскать по авторуВ закладки on 19-Фев-04, 15:10  (MSK)
>Не понял... Ведь disable_functions= прописывается в php.ini, а он - для всех
>один. Или можно указать disable_functions= в настройках самого apache в VirtualHost
>? Каким образом ?

В VirtualHost ты можешь написать "php_admin_value disable_functions system". Это в теории. На практике при включенном "php_admin_flag safe_mode on" у меня все равно системные вызовы не работают :) А вот включать/выключать safe_mode точно можно для каждого хоста отдельно.
Т.е. просто протестируй свою конфигураию на опасные команды.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от uldus Искать по авторуВ закладки on 17-Фев-04, 20:32  (MSK)
>Как пользователям виртуальных хостов запретить исполнение в PHP команд passthru, system, exec

safe_mode + "php_admin_value safe_mode_exec_dir /dev/null"

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "что изменится при safe_mode"
Сообщение от andy_av Искать по авторуВ закладки on 18-Фев-04, 16:04  (MSK)
>>Как пользователям виртуальных хостов запретить исполнение в PHP команд passthru, system, exec
>
>safe_mode + "php_admin_value safe_mode_exec_dir /dev/null"

Если я переведу php в safe_mode, что мне придется переписывать из скриптов? какие функции и переменные окружения станут после этого недоступны?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "что изменится при safe_mode"
Сообщение от uldus Искать по авторуВ закладки on 19-Фев-04, 14:47  (MSK)
>Если я переведу php в safe_mode, что мне придется переписывать из скриптов?

Как правило ничего, только пути в скриптах поправить.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "что изменится при safe_mode"
Сообщение от andy_av Искать по авторуВ закладки on 19-Фев-04, 18:06  (MSK)
Большое спасибо всем, действительно заработало так, как мне надо было!

Теперь еще вопрос - safe_mode всем включил. Себе в виртуальном хосте выключил. Как бы еще его выключить для скриптов, запускаемых с консоли, чтобы работали конструкции типа

--- script.php -----------------------------
#!/usr/local/bin/php
<? passthru ("ls ./"); ?>
--------------------------------------------

  Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от Nickolay Искать по авторуВ закладки on 24-Фев-04, 10:28  (MSK)
а что? open_base_dir уже отменили в настройках хостов?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "как запретить владельцам VirtualHost в PHP команду passthru ..."
Сообщение от andy_av Искать по авторуВ закладки on 27-Фев-04, 13:00  (MSK)
>а что? open_base_dir уже отменили в настройках хостов?

это не имеет НИКАКОГО отношения с passthru()

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру