Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #30, МАЙ 2003 г.

PHP-BugZ

ManderX

Спецвыпуск Xakep, номер #030, стр. 030-020-4


safe_mode_exec_dir = /home/USER/bin

Если PHP используется в safe mode, функции запуска системных процессов (system и другие) не смогут запустить программы, которые находятся не в этом каталоге.

4. Запретить открытие удаленных файлов, если они не нужны:

allow_url_fopen off

5. Отключение функции:

disable_functions = phpinfo

6. Скрытие пхп:

expose_php off

Эта директива сообщает, может ли PHP оповещать пользователей о своем существовании на данном сервере, например, добавляя HTTP заголовок.

7. Выключить вывод сообщений об ошибках в браузер, и включить регистрирование ошибок в лог-файле:

display_errors off

log_errors on

8. Ограничения на закачку файлов

upload_tmp_dir = /home/USER/tmp

Указанный каталог используется для временного сохранения файлов, загружаемых пользователями на сервер. Каталог должен быть доступен для записи пользователю, от имени которого запущен Apache.

upload_max_filesize = 2M

Определяет, максимальный размер файла, который может быть загружен пользователем на сервер.

9. Ограничения на время работы

max_execution_time = 30

Устанавливает максимальное время в секундах, в течение которого разрешено выполнение скрипта пока он будет прерван интерпретатором PHP. Это предохраняет сервер от длительного выполнения ошибочных сриптов.

10. Ставить слеш перед спецсимволами

magic_quotes_runtime on

Если опция включена, то большинство функций возвращающих данные из любых внешних источников (включая базы данных и текстовые файлы) будут предварять все специальные символы обратным слешем.

11. Скрытие Php

Возможно, ты захочешь просто спрятать свой php-скрипт, для этого кроме уже рекомендованной опции expose_php off можно ассоциировать интерпретатор php с необычным типом файлов.

Например, подредактировав httpd.conf, можно маскировать php-скрипт под другой скрипт:

AddType application/x-httpd-php .asp .py .pl

Использовать несуществующие типы:

AddType application/x-httpd-php .rus .cccp .msdos .xakep

Замаскировать под простой html:

AddType application/x-httpd-php .htm .html

Кстати многие, увидев динамические проекты, удивляются – почему на html?

[Finish]

В рамках одной статьи я постарался выдать как можно больше инфы по безопасной работе с PHP. Вывод можно сделать только один - хорошо настроив апач и пхп, уже можно отвертеться от некоторых бажных скриптов. Так что уговаривай админа изменить конфигурацию=). Удачи в написании скриптов!!!

Описание Security функции

escapeShellCmd($str) и escapeshellarg($str) – обе очищают строки от небезопасных символом, очищают строки $str, которые потом должны быть употреблены в функциях типа system(). Не знаю чем они отличаются, но в PHP-документации советуют использовать вторую.

strip_tags($str, [$allowable_tags]) – функция удаляет из строки $str все тэги и возвращает результат, в параметре $allowable_tags можно передать тэги, которые не следует удалять.

stripslashes($str) – заменяет в строке $str некоторые предваренные слэшем символы (а это – “,’,\) на их одинаковые эквиваленты. Употреблять можно в связке с htmlspecialchars().

htmlspecialchars($str) – заменяет в строке $str некоторые символы (амперсант, кавычки, знаки “больше” и “меньше” и т.д.) на их HTML-эквиваленты, так, чтобы они выглядели на страницы “самими собой”.

Назад на стр. 030-020-3  Содержание  Вперед на стр. 030-020-5