Ник:
Пароль:

Download Open SLAED

Open SLAED 1.1 Open SLAED 1.1

Поиск по сайту

Поиск

Рекламные ссылки

Open SLAED
Мы будем Вам признательны, если Вы поддержите проект Open SLAED и используя Ваши возможности, разместите наш пресс-релиз на страницах своих сайтов, проектов, форумов, блогов. Текст пресс-релиза, возможно, видоизменить под Ваш формат, не искажая смысл. Пресс-релиз можно взять на данной странице.
Новости
Новости » Интернет
Десять правил написания безопасного кода на PHP
Мир интернета
В серии статей "Ten Security Checks for PHP" кратко рассматриваются 10 наиболее часто совершаемых PHP программистами ошибок, приводящих к проблемам с безопасностью скриптов.

Избегайте использования переменных сформированных на основании данных пользователя в функции включения файла (include, require) или доступа к файлу (readfile, fopen, file). Например: include($lib_dir . "functions.inc"); include($page); переменные $lib_dir и $page перед этим нужно проверить либо на предмет наличия запрещенных символов, либо сопоставить с заранее определенным массивом допустимых значений.


$valid_pages = array("apage.php" => "", "another.php" => "", "more.php" => "");
if (!isset($valid_pages[$page])) {
die("Invalid request");
}

if (!(eregi("^[a-z_./]*$", $page) && !eregi("..", $page))) {
die("Invalid request");
}

Необходимо экранировать опасные символы ( и ') в переменных участвующих в SQL запросах. Например, злоумышленник может передать переменную вида "password=a%27+OR+1%3Di%271" которая будет использована в SQL запросе как "Password='a' or 1='1'". Решение: включить magic_quotes_gpc в php.ini или экранировать переменные самостоятельно через addslashes();

Никогда не нужно доверять глобальным переменным, при включенном в php.ini режиме register_globals злоумышленник может подменить значение глобальной переменной. Используйте ассоциативные массивы $HTTP_GET_VARS и $HTTP_POST_VARS с выключенным register_globals и в начале скрипта явно инициализируйте все глобальные переменные.

Определяйте местонахождение закаченного файла только через is_uploaded_file() или используя move_uploaded_file(), но не доверяйте глобальной переменной с путем к закаченному файлу, значение которой злоумышленник может подменить.

Используйте функции htmlspecialchars(), htmlentities() для экранирования HTML тэгов присутствующих в данных полученных от пользователя.

Защищайте библиотеки функций от просмотра их исходных текстов пользователем (расширения .inc, .class). Решение: снабжайте библиотеки расширением .php, помещайте в закрытую директорию или настройте хэндлер для парсинга расширения файлов с вашими библиотеками.

Помещайте файлы данных вне дерева файловой системы доступной через web (уровнем ниже htdocs, или "document root") или защищайте директории через .htaccess.

mod_php запускайте в режиме safe_mode.

Проверяйте наличие запрещенных символов в переменные используемых в функциях eval, preg_replace, exec, passthru, system, popen, ``.

При использовании не mod_php, а CGI варианта php.cgi не забывайте, что через php.cgi можно получить доступ к любому файлу в директориях защищенных через .htaccess, так как доступ в этом случае ограничен только для прямых запросов, но не для запросов через CGI скрипт php.cgi.

Смотрите также связанные новости

14.07.2008 - Фильтры Google и способы их обхода
08.12.2007 - Интернет – интернат для одиноких душ?
06.08.2007 - Смешные доменные имена сайтов
18.06.2007 - Способы повышения посещаемости сайта
18.05.2007 - Обман в обмене ссылками - Раскрутка сайта
SpeedHack
Добавлено 17.02.2006 20:17 Комментарий: 1
SpeedHack
3

Пункты: 65
Регистрация: 04.06.2005
Пол: Мужчина
Из: Russia / Kuban
По больше такого матерала сюда нужно кидать ;)
Спуститься к концу Подняться к началу
Персональная информация
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.

Сотовые Аксессуары

Опрос

Какое расширение экрана Вы используете?

1024 x 768
1280 x 768
1280 x 800
1280 x 960
1280 x 1024
1360 x 768
1440 x 900
1600 x 900
1600 x 1000
1600 x 1024
1600 x 1200
1680 x 1050


Результаты
Другие опросы

Всего голосов: 2415
Комментарии: 45
Счетчик посещения страниц и уникальных посетителей в сутки SLAED CMS - Content Management System Экспорт новостей в формате RSS Anti Spam