Forum Webscript.Ru

Общие => Базы данных => Тема начата: Kwazar от 25 Февраля 2005, 11:27:06

Название: Анти sql иньекция
Отправлено: Kwazar от 25 Февраля 2005, 11:27:06
Собственно вопрос вот в чем.
Я обрабатываю все вводимые данные и экранирую эти символы:
<
>
\'
"
(
)
Пропустил ли я какие-нибудь спец-символы, благодаря которым можно будет осуществить sql иньекцию?
Название: Анти sql иньекция
Отправлено: commander от 25 Февраля 2005, 12:02:24
Kwazar
для защиты от атаки sql injection, нужно грамотно стороить sql запросы... в этом случае придеться экранировать только символ \' ...

подробнее о технологии тут:
http://www.unixwiz.net/techtips/sql-injection.html
Название: Анти sql иньекция
Отправлено: commander от 25 Февраля 2005, 13:42:03
Kwazar
ещё неплохая подборочка статей:
http://forums.webscript.ru/showthread.php?s=&threadid=18600&msgnum=6
Название: Анти sql иньекция
Отправлено: Guest123 от 03 Марта 2005, 19:41:33
Простое экранирование ковычки не всегда спасает. Стоит учесть еще и такю ситуацию

http://www.site.ru/news.php?id=43
....
SELECT name, text FROM news WHERE id=$id;

В таком случае даже фильтрация переменной $id не спасет от sql-inj. Достаточно распространенная ошибка "грамотных" программеров, которые не обособляют передаваемые числовые переменные в ковычки.