Показать сообщение отдельно
  #2 (permalink)  
Старый 22.11.2010, 11:53
Аватар для cuberboy
Профессор
Отправить личное сообщение для cuberboy Посмотреть профиль Найти все сообщения от cuberboy
 
Регистрация: 20.07.2009
Сообщений: 202

Для защиты от кулхацкеров обычно фильтруют или иным образом обрабатывают спецсимволы в получаемые строках, исключая таким образом возможность инъекции вредоносного кода.

PHP имеет встроенную возможность экранирования символов слеша и кавычек:

magic_quotes_gpc = 1 – Символы одиночные (‘) и двойные кавычки («), обратный слеш (), байт NULL в данные, получаемых из массивов $_GET, $_POST, $_COOKIE, автоматически экранируются интерпретатором PHP. Перед каждым таким символом добавляется обратный слеш.

magic_quotes_sybase = 1 – Одинарные кавычки экранируются одинарной кавычкой а не backslash.

Если директива magic_quotes_sybase включена (ON) это полностью отменит magic_quotes_gpc. Предоставление обеих директив означает только одиночные кавычки (‘) кавычки, экранируемые как «. Двойные кавычки, наклонные черты влево и ПУСТОТЫ останутся нетронутыми.

magic_quotes_runtime = 1 – Большинство функций, возвращающих данные из внешнего источника любого рода, включая БД и текстовые файлы, будут иметь кавычки, экранированные с помощью обратных слешей. Если magic_quotes_sybase также включена, одинарные кавычки экранируются одинарной кавычкой вместо backslash.

Текущие параметры, установленные хостером, можно выяснить самостоятельно. Некоторые хостеры по запросу могут менять настройки.
Ответить с цитированием