Forum Webscript.Ru
Общие => Базы данных => Тема начата: Kwazar от 25 Февраля 2005, 11:27:06
-
Собственно вопрос вот в чем.
Я обрабатываю все вводимые данные и экранирую эти символы:
<
>
\'
"
(
)
Пропустил ли я какие-нибудь спец-символы, благодаря которым можно будет осуществить sql иньекцию?
-
Kwazar
для защиты от атаки sql injection, нужно грамотно стороить sql запросы... в этом случае придеться экранировать только символ \' ...
подробнее о технологии тут:
http://www.unixwiz.net/techtips/sql-injection.html
-
Kwazar
ещё неплохая подборочка статей:
http://forums.webscript.ru/showthread.php?s=&threadid=18600&msgnum=6
-
Простое экранирование ковычки не всегда спасает. Стоит учесть еще и такю ситуацию
http://www.site.ru/news.php?id=43
....
SELECT name, text FROM news WHERE id=$id;
В таком случае даже фильтрация переменной $id не спасет от sql-inj. Достаточно распространенная ошибка "грамотных" программеров, которые не обособляют передаваемые числовые переменные в ковычки.