> Столкнулся с серьёзной проблемой в безопасности Apache.
> Имеется Apache 2.2.22 + mod_php(5.2.17)
> С помощью функций exec(),system(),shell_exec()
> вызываемых через Apache
> могу преспокойно читать многие файлы в каталоге /etc,
> возможно и из других каталогов тоже
> Жду ваших советов.Добрый день.
Рекомендую ознакомиться с указанными рекомендациями по поводу усиления защищенности веб-сервера.
Protect Server Files by Default
One aspect of Apache which is occasionally misunderstood is the feature of default access. That is, unless you take steps to change it, if the server can find its way to a file through normal URL mapping rules, it can serve it to clients.
For instance, consider the following example:
# cd /; ln -s / public_html
Accessing http://localhost/~root/
This would allow clients to walk through the entire filesystem. To work around this, add the following block to your server's configuration:
<Directory />
Order Deny,Allow
Deny from all
</Directory>
This will forbid default access to filesystem locations. Add appropriate Directory blocks to allow access only in those areas you wish. For example,
<Directory /usr/users/*/public_html>
Order Deny,Allow
Allow from all
</Directory>
<Directory /usr/local/httpd>
Order Deny,Allow
Allow from all
</Directory>
Подробнее: http://httpd.apache.org/docs/2.2/misc/security_tips.html
Короче говоря, Apache по умолчанию может допустить веб-клиентов к корневой файловой системе сервера.
Нужно запретить ему это делать на основании изложенных выше рекомендации, которые указаны на официальном сайте фонда Apache.