URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7647
[ Назад ]

Исходное сообщение
"Apache VirtHost, php ф-ция opendir и похожие"

Отправлено Телефизор , 03-Дек-12 16:29 
День добрый.
Не думал что все может быть так печально но ...
Есть VirtualHost`s (5 шт.)
/home/site1
/home/site2
/home/site3
/home/site4
/home/site5
И вот что оказалось, при помощи функции opendir и похожие с ней можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже /*
Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах своего каталога.
  

Содержание

Сообщения в этом обсуждении
"Apache VirtHost, php ф-ция opendir и похожие"
Отправлено ne4to , 03-Дек-12 16:33 
>[оверквотинг удален]
> /home/site1
> /home/site2
> /home/site3
> /home/site4
> /home/site5
> И вот что оказалось, при помощи функции opendir и похожие с ней
> можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже
> /*
> Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах
> своего каталога.

правильный chown для home/* + mod_ruid2


"Apache VirtHost, php ф-ция opendir и похожие"
Отправлено Телефизор , 03-Дек-12 16:59 
>[оверквотинг удален]
>> /home/site2
>> /home/site3
>> /home/site4
>> /home/site5
>> И вот что оказалось, при помощи функции opendir и похожие с ней
>> можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже
>> /*
>> Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах
>> своего каталога.
> правильный chown для home/* + mod_ruid2

Спасибо, с вашей подачи нашел и как способ mpm-itk, есть комментарии что из них лучше ?



"Apache VirtHost, php ф-ция opendir и похожие"
Отправлено Телефизор , 03-Дек-12 19:10 
>[оверквотинг удален]
>> /home/site2
>> /home/site3
>> /home/site4
>> /home/site5
>> И вот что оказалось, при помощи функции opendir и похожие с ней
>> можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже
>> /*
>> Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах
>> своего каталога.
> правильный chown для home/* + mod_ruid2

СПАСИБО! Все работает!


"Apache VirtHost, php ф-ция opendir и похожие"
Отправлено PavelR , 03-Дек-12 21:48 
> при помощи функции opendir и похожие с ней
> можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже
> /*
> Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах
> своего каталога.

купите книжку по юникс и прочитайте про разделение прав доступа пользователей.
Читать список каталогов в /home/ и даже в / - это почти нормально.
Ненормально - читать каталоги /home/otheruser/ да и то, если на них права не выше 770 если группы пользователей разные или не выше 700 если группы одинаковы (об этом тоже можно получить понимание, если почитать книжки и подумать).

Поскольку у вас скорее всего apache+mod_php, в котором таки да, можно читать каталоги других пользователей, то вы можете:

1) Запустить 5 апачей с mod_php, каждый от своего пользователя, + nginx перед ними
2) отказаться от mod_php, использовать apache+suexec
3) отказаться от mod_php, использовать php-fpm инстансы.
4) нанять вменяемого админа.