Продолжаю изучение защиты сайта.
Недавно прочел несколько статей с предложением отключения некоторых функций PHP.
Но так как хостинг у меня только виртуальный и возможности править php.ini нет
Придется править .htaccess
Подскажите, поправте что не так. Что вкл а что выкл
?
Вот несколько директив / функций которые как я понял желательно отключить:
safe_mode - проверяет владельца запущенного скрипта и если скрипт пытается открыть
какой-либо файл - делает это с правами этого владельца
php_admin_flag safe_mode on
register_globals - Запретить создание глобальных переменных из пользовательского ввода
если включена, переменные GET, POST, Cookie, Server будут регистрироваться как глобальные переменные.
Если директива выключена, то глобальный доступ можно получить через массивы $HTTP_ENV_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_COOKIE_VARS, $HTTP_SERVER_VARS
php_flag register_globals 0
php_value register_globals 0
allow_url_fopen - запрет подключению сайта к удалённым страницам, скриптам.
это несколько замедлит работу программы - при каждом вызове *.php скриптов
будет происходить обращение к файлу .htaccess
php_value allow_url_fopen 0
php_flag allow_url_fopen 0
phpinfoзапретить опасные функции:
disable_functions=phpinfo,system,passthru,cmd
expose_php - директива сообщает, может ли PHP оповещать пользователей о своем существовании на данном сервере, например, добавляя HTTP заголовок.
expose_php off
max_filesizeОграничить размер загружаемого файла на сервер
upload_max_filesize = 2M
Ограничения на время работыmax_execution_time = 30
Отключить вывод ошибокИ включить директиву записи ошибок в лог-файл сервера.
В результате такого запроса, становится известен путь к скрипту и имя файла.
Если нет доступа к php.ini, можно добавить в начало скрипта строку error_reporting(0); это подавит вывод ошибок.
php_flag display_errors off
php_flag log_errors on
php_value error_log /home/ваш_путь/web/php_error.log
php_value error_reporting 2039
magic_quotes_gpc - если включена, автоматически добавляет слеши к данным пришедшим от пользователя - из POST, GET запросов и cookie.
php_flag magic_quotes_gpc 0
magic_quotes_runtime - если включена, автоматически добавляет слеши к данным, полученным во время исполнения скрипта - например, из файла или базы данных.
php_flag magic_quotes_runtime 0
Под вопросом:php_value magic_quotes_sybase Off
php_value post_max_size 20M
php_value max_input_time 200
PSНемного запутался в следующем:
1. safe_mode должен быть выключен или выключен?
2. функции должны включатся с помощью php_value или php_flag ? - поэтому некоторые примеры представлены в разных(двух) вариантах.
3. как включить
некоторые функции в htaccess мне не удалось узнать поэтому они написаны в виде настроек для php.ini