Как обезопаситься от вложенных запросов?

Статус
В этой теме нельзя размещать новые ответы.

Line

Google, Co.
Как обезопаситься от вложенных запросов?

Как посоветуете обрабатывать передаваемые в sql запрос данные из формы, для исключения возможности вложенных запросов и манипуляций с sql-запросом, недобросовестными посетителями сайта?
Желательна статья.
Спасибо
 

Wicked

Новичок
1) использовать механизм плейсхолдеров, например. Такое есть в PDO, mysqli, а также врапперах типа DB_Simple, и т.д.

2) если запросы собирать руками, то для строк нужно использовать mysql_real_escape_string(), mysqli::escape_string(), PDO::quote().

3) intval() и им подобное для форсированного приведения к нужному типу.
 

Фанат

oncle terrible
Команда форума
офигеть.
Line. Ты за столько лет не удосужился заглянуть на phpfaq.ru?
 

Line

Google, Co.
*****
Все что перечислил Wicked используем.
Желание исключительно почитать, помню где-то были статьи, а где именно не помню.
 

fixxxer

К.О.
Партнер клуба
фигасе :)

какие нафиг статьи. надо соблюдать синтаксис языка, конструкции которого генерируешь. всё ;)
 

Wicked

Новичок
Line
откуда тогда те дырки в сайте, который ты выставлял на тестирование? :)
 

Line

Google, Co.
не дошли руки до пользовательской части конкретного проекта. Дела в том, обычно мы настраиваем PHP на автоматическое экранирование управляющих символов, а в данном случае по дефалту опция отключена осталась. Зато теперь превосходно справились с этой задачей ;-)
 

Wicked

Новичок
Дела в том, обычно мы настраиваем PHP на автоматическое экранирование управляющих символов, а в данном случае по дефалту опция отключена осталась.
magic_quotes что ли?
 

Koc9k

Новичок
видимо да , только я не понял , по какому дефолту она отключена -.-
 

Wicked

Новичок
Line
дак вот, magic quotes = зло, поэтому я обычно рассчитываю, что они выключены. А на случай, если включены, сначала откатываю вносимые ими изменения, и работаю по схемам, описанным в моем первом комментарии. Кстати, как ты можешь заметить, addslashes там тоже нету.
 

Line

Google, Co.
Wicked
" на случай, если включены, сначала откатываю вносимые ими изменения" - аналогично поступаем
 

Line

Google, Co.
Фaнaт
Я лично ничего позорного, в функции принудительного слеширования я не вижу... :)
 

kruglov

Новичок
Line
Это навроде детских боковых колесиков у велосипеда. Можно даже привыкнуть и не мыслить себе катания без них. Но окружающим смешно.
 

Фанат

oncle terrible
Команда форума
Line
Дело не в том, что функция позорная.
А в том, что в одной строчке ты пишешь одно, а в другой - противоположное.
Осюда следует вывод: ты не понимаешь вообще о чем пишешь.
И дыры в твоих сайтах будут всегда.
 

Line

Google, Co.
Фaнaт
Абсолютное заблуждение.
Проще смотрите на высказывания, т.к. очень часто, четко понимая суть вопроса, некорректно, получается высказать мысль. Это естественно и нормально.
Не существует людей, которые на 100% были бы в теме. Так уж устроен человек...
А здесь мы, чтобы пополнять свои знания. Или как главный модератор форума, у вас другие мысли на этот счет?
 

Фанат

oncle terrible
Команда форума
Да, разумеется.
Ты себе льстишь, как стареющая куртизанка.
Четко суть вопроса понимает тут кто угодно, но только не ты.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху