Это пример атаки SQL-инъекций? - PullRequest
9 голосов
/ 12 марта 2012

Я разработал веб-сайт для клиента, где они будут размещать изображения своих товаров в Интернете.URL-адрес www.domiainname.com/item-details.cfm?sku=125.Кто-то пытался перейти на www.domiainname.com/item-details.cfm?sku=125%20and%203=3, что привело к ошибке, в которой я получил уведомление.

Я также получил сообщения об ошибках:

item-details.cfm?sku=1291+or+1=@@version-- 
item-details.cfm?sku=1291'+or+1=@@version 
item-details.cfm?sku=1291+or+1=@@version

Последние три примера определенно относятся к тому, кто пытался войти в систему, верно?это хранимые процедуры, это уменьшит или исключит риск атак вставки?

Ответы [ 3 ]

8 голосов
/ 12 марта 2012

Да, похоже, что кто-то злой.

Использование cfqueryparam предотвратит атаки с использованием SQL-инъекций. Если вы сомневаетесь (и это CF), спросите Бена:

Атаки SQL-инъекцией, которые легко предотвратить, но, видимо, все еще игнорируются

Пример:

<cfquery ...>
    SELECT    *
    FROM      Products
    WHERE     SKU=<cfqueryparam value="#URL.SKU#" cfsqltype="CF_SQL_INTEGER">
</cfquery>
2 голосов
/ 12 марта 2012

Используйте cfqueryparam и забудьте о любых sql-инъекциях;)

0 голосов
/ 12 марта 2012

Да, кто-то пытался внедрить SQL. Если вы правильно проверите переменную sku в своем коде, это не принесет никакого вреда.

...