Защита от SQL инъекций

Программирование на Active Server Pages и VBScript.
cooler
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 90
Зарегистрирован: 09.08.2004 (Пн) 4:58
Откуда: Che sity

Защита от SQL инъекций

Сообщение cooler » 15.05.2008 (Чт) 13:31

Есть некоторый сайт(движок), написанный давно, писался несколькими поколениями программеров... Сейчас за него частично отвечаю я... В нем обнаружили потенциальную опасность SQL-инекции в запросах... Хотелось бы, чтоб более опытные люди поделились советами (кроме переписывания его, т.к. это начальство сильно против)... Ну и суть вопроса вобщем: Можно ли каким-то образом менять request.querystring? Необходимо отфильтровать кавычку... Т.е. не совсем отфильтровать, а поставить еще 1, чтобы SQL-сервер воспринял это как комментарий, в случае попытки атаки...(полностью фильтровать нельзя, т.к. существует множество мест, где кавычка идет как служебный символ... Пытался менять как отпарсенную, так и полностью... но выходит ошибка (( Была идея сделать редирект, но тут возникает проблема зацикливания... В МСДНе не нашел свойств, а в гуглях в осоновном про .net ... (((
Может есть что-то типа raw access к этим переменным?
p.s. также не хотелось бы загонять данные в переменные и менять их там, т.к. это может "всплыть" где-нибудь в другой части движка
ISAPI фильтры тоже как-то мне не по душе..
p.p.s. сорри за большей объем и некоторую несвязность, надеюсь понятно.
Windows написанна с применением искусственного интеллекта. И как любое разумное существо старается работать как можно меньше :))

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 15.05.2008 (Чт) 14:35

На самом деле очень хорошая статья в Википедии на эту тему, очень хорошая, на самом деле, я даже не ожидал...
http://ru.wikipedia.org/wiki/Инъекция_SQL
Там же и пути решения и пути обхода решений и пути обхода обхода решений путей, ох..
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

cooler
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 90
Зарегистрирован: 09.08.2004 (Пн) 4:58
Откуда: Che sity

Сообщение cooler » 15.05.2008 (Чт) 15:28

Денис писал(а):На самом деле очень хорошая статья в Википедии на эту тему, очень хорошая, на самом деле, я даже не ожидал...
http://ru.wikipedia.org/wiki/Инъекция_SQL
Там же и пути решения и пути обхода решений и пути обхода обхода решений путей, ох..

Нуу... в принципе я это знаю... но и путь этот тоже, просто как это реализовать на asp? причем так, чтобы изменить сам http заголовок, который парсится и юзается в дальнейшем не в 1 месте...
Windows написанна с применением искусственного интеллекта. И как любое разумное существо старается работать как можно меньше :))

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 15.05.2008 (Чт) 15:36

На всякий случай спрошу, интересует ASP или ASP.NET?
В первом случае, вероятно, ничего кроме написание ISAPI посоветовать нельзя.
Денис
Автор, как мне кажется, не спрашивает что такое SQL-инъекция. Он спрашивает, как мне опять же кажется, как универсальным образом пофиксить строки в get-запросе не меняя код страниц
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

cooler
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 90
Зарегистрирован: 09.08.2004 (Пн) 4:58
Откуда: Che sity

Сообщение cooler » 15.05.2008 (Чт) 19:12

ANDLL писал(а):На всякий случай спрошу, интересует ASP или ASP.NET?

Да, именно простой ASP. Возможно, действительно проще будет сделать isapi... надеялся, что asp умеет изменять запросы... похоже, что нет
Windows написанна с применением искусственного интеллекта. И как любое разумное существо старается работать как можно меньше :))


Вернуться в ASP и VBScript

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

    TopList