Программирование > PHP

Первостепенная Защита Сайта На Php

(1/1)

blacks:
Продолжаю изучение защиты сайта.

Недавно прочел несколько статей с предложением отключения некоторых функций 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

alex007:

--- Цитировать ---safe_mode
- проверяет владельца запущенного скрипта и если скрипт пытается открыть
какой-либо файл - делает это с правами этого владельца

php_admin_flag safe_mode on



--- Конец цитаты ---

сейчас есть полутше защита - suphp и suEXEC

Навигация

[0] Главная страница сообщений

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии