По принципу «если он ходит как утка и звучит как утка», то кажется, что запросы со вкусом SQL, поддерживаемые Amazon SimpleDB, должны быть подвержены атакам типа SQL-инъекций.Вот простой пример, который предполагает, что ввод злоумышленника входит в переменную $ category, и что он может угадать имя столбца:
$category = "Clothes' OR Category LIKE '%";
$results = $sdb->select("SELECT * FROM `{$domain}` WHERE Category = '$category'");
Если вы играете в домашнюю игру, эти строки могут быть- замените строку 119 в файле html-sdb_create_domain_data.php
в примере кода в Amazon SDK PHP (1.2).
Amazon публикует правила цитирования , и я полагаю, что мог бы написать что-то, что обеспечитчто любое «или» в пользовательском вводе удваивается ... но я всегда понимал, что побег - это в основном гонка вооружений, что делает параметризацию моим оружием выбора при использовании, например, MySQL.
Чтодругие люди используют для защиты запросов SimpleDB?