sql инъекции

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Stas
Сообщения: 441
Зарегистрирован: 2011.11.29, 16:00

sql инъекции

Сообщение Stas »

Скажите, а такой запрос от SQL инъекций защищён?

Код: Выделить всё

Products::model()->findByAttributes(array('url'=>$_GET['commodity']));
ведь параметры передаются только для второго параметра
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: sql инъекции

Сообщение maleks »

защищен. Копните вглубь, там увидите что имеется дополнительная работа с такими параметрами - преобразование их в именованные плейсхолдеры.
Yii2 universal module sceleton - for basic and advanced templates
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: sql инъекции

Сообщение ElisDN »

Защищён. Незащищён только ручной ввод запроса:

Код: Выделить всё

Products::model()->findBySql('SELECT * FROM {{table}} WHERE url="' . $_GET['commodity'] . '"');
Последний раз редактировалось ElisDN 2014.02.02, 09:16, всего редактировалось 2 раза.
undestroyer
Сообщения: 120
Зарегистрирован: 2014.01.06, 13:46

Re: sql инъекции

Сообщение undestroyer »

ActiveRecord использует подготовленные выражения, поэтому что бы не писали в параметрах, они будут безопасны
link
Аватара пользователя
Barssoft
Сообщения: 726
Зарегистрирован: 2013.01.21, 16:03

Re: sql инъекции

Сообщение Barssoft »

Такой запрос защищен, но вот так кой же нет?

Код: Выделить всё

Products::model()->find('url='.$_GET["commodity"].'');
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: sql инъекции

Сообщение maleks »

такой - нет.
Yii2 universal module sceleton - for basic and advanced templates
Ответить