Является ли этот запрос Coldfusion SQL-инъекцией доказательством? - PullRequest
3 голосов
/ 11 августа 2011

Как правило, я использую целочисленные идентификаторы в своем приложении, но для этого одного элемента dev я делаю поиск по текстовому полю - имени тега.

Я использую cfqueryparam, но, учитывая, что это текстовое поле, может ли оно быть уязвимым для атак с использованием SQL-инъекций, и если да, то как другие люди могут обойти это, кроме утомительного поиска в строке команд SQL.

Мой запрос выглядит примерно так:

SELECT tagId -- etc etc
FROM tag
WHERE tagName = <cfqueryparam cfsqltype="cf_sql_varchar" maxlength="50" value="#arguments.tagName#" />

Спасибо

Ответы [ 4 ]

8 голосов
/ 11 августа 2011

Это безопасно благодаря тому, что вы используете <cfqueryparam>.Это то, что делает тег.Он отправляет значение в виде текста (или как бы там ни было cfsqltype), не команда для выполнения.

7 голосов
/ 11 августа 2011

По большей части да ... делать инъекции SQL для этого было бы очень сложно.CFQUERYPARAM делает практически невозможным ввод SQL-запроса.Однако помните, что ничто не является на 100% эффективным против всех форм атак.

0 голосов
/ 11 августа 2011

Я где-то слышал, что использование cfqueryparam вместе с Portcullis будет более надежной защитой от XSS и заблокирует попытки злонамеренного взлома.

Большинство веб-разработчиков ColdFusion наконец используют cfqueryparam, это прошло около 10 лет с тех пор, как этот тег был введен, но я думаю, лучше поздно, чем никогда. Имейте в виду, что cfqueryparam предотвращает большинство формы SQL инъекции, но не все. Это также ничего не делает для кросс-сайта скриптовые (XSS) атаки. Неважно, насколько маленький ваш сайт или где он находится, он будет испытывать эти векторы атаки. опускная решетка может потребоваться 5 минут для установки и настройки. Ничто не идеально, но у Portcullis солидный послужной список - просто погуглите его. Итак, есть просто нет причин думать, где находится сайт, основанный на ColdFusion не должен его использовать.

http://www.codfusion.com/blog/post.cfm/portcullis-2-0-released

Также вы можете посмотреть CFMeetup: Внимание, ваш сайт подвергся атаке , представленный Джоном Мэйсоном, автором Portcullis.

0 голосов
/ 11 августа 2011

Если вы не использовали cfqueryparam, то вы были бы уязвимы.

Используя cfqueryparam, вам не нужно беспокоиться о внедрении SQL.

Попробуйте применить инъекционные атаки и убедитесь сами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...