Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Фильтр SqlInj и XSS

36K
10 февраля 2011 года
Вадим777
4 / / 12.06.2008
Всем доброе время суток у меня такой вопрос, я написал функцию но думаю почему то что она не очень защитит от SQl inj подскажите мож что не так. собственно вот и сама функция.
Код:
function sql_xss_filt($str){
        $str = strtolower($str);
        $str = str_replace("*","",$str);
        $str = str_replace("/","",$str);
        $str = str_replace("\\","",$str);
        $str = str_replace("+","",$str);
        $str = str_replace("-","",$str);
        $str = str_replace("(","",$str);
        $str = str_replace(")","",$str);
        $str = str_replace("<","",$str);
        $str = str_replace(">","",$str);
        $str = str_replace("%2a","",$str);
        $str = str_replace("%2f","",$str);
        $str = str_replace("%5c","",$str);
        $str = str_replace("%2b","",$str);
        $str = str_replace("%2d","",$str);
        $str = str_replace("%28","",$str);
        $str = str_replace("%29","",$str);
        $str = str_replace("%3c","",$str);
        $str = str_replace("%3e","",$str);
       
           
   
        $str = str_replace("union","",$str);
        $str = str_replace("select","",$str);    
        $str = str_replace("or","",$str);
        $str = str_replace("and","",$str);
        $str = str_replace("char","",$str);
        $str = str_replace("order","",$str);
        $str = str_replace("by","",$str);    
        $str = str_replace("%75%6e%69%6f%6e","",$str);
        $str = str_replace("%73%65%6c%65%63%74","",$str);
        $str = str_replace("%6f%72","",$str);
        $str = str_replace("%61%6e%64","",$str);
        $str = str_replace("%63%68%61%72","",$str);
        $str = str_replace("%6f%72%64%65%72","",$str);
        $str = str_replace("%62%79","",$str);
   
        $str = str_replace("%25","",$str);
        $str = str_replace("%","",$str);
      return $str;
    }
13
10 февраля 2011 года
RussianSpy
3.0K / / 04.07.2006
Ну, во-первых, не надо делать стопицот вызовов str_replace - она умеет принимать на вход массив значений.

А во-вторых, ваша функция вообще не нужна:
От инъекций
http://ru2.php.net/manual/en/function.mysql-real-escape-string.php

От XSS
http://ru2.php.net/manual/en/function.htmlspecialchars.php
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог