![]() |
Обход проверки на SQL-inj
Доброго времени суток, опять я и опять с вопросом о SQL-inj.
Есть функция, которая проверяет входящую переменную на banwords. Очень хочется обойти эту проверку. В примудростях MSSQLа я не разбираюсь, поэтому прошу помощи. Код:
function antiinjection($str) {ПиСи Еще раз повторюсь - платформа MSSQL |
жестко они :) пробиться вроде никак низя..
хотя странно они сделали - нафиг одновременно и регулярка на буквы-цифры и еще вырезание спецсимволов, которые никогда не попадут под эту регулярку |
_Great_, в принципе да, лишнего много, но, видишь,они не сделали эти две фильтрации параллельно, а сделали зависимыми!
Т.е. если переменная $str содержит НЕ только латинские буквы обоих регистров и цифры if ( eregi ( "[a-zA-Z0-9]+", $str ) ) тогла происходит фильтрация на спец символы! Хотя я вообще не пойму зачем такая фильтрация... Я считаю переменные нужно фильтровать htmlspecialchars() и addslashes() В мускуле htmlspecialchars() и если идет запись в базу mysql_escape_string() Если целлочисленное значение(например id и прочее), тогда только intval() ! |
| Время: 08:55 |