/** * Класс фильтрации глобальных переменных * Oбновлен 10.09.2013 г. * Соавтор: Кредитор * Icq: 441460 * Email: kpegumop@yandex.ru * Сайт: http://gix.su - Безопасные сделки, модули и дизайны для ваших сайтов, seo скрипты, оптимизация, безопасность * Любые скрипты на заказ */ Описание: Очень простой и шустрый класс фильтрации глобальных переменных на предмет sql inj и xss. Прост в установке. Установка: 1. Создайте папку /sys/classes/ 2. Загрузите в нее файл AntiHack.class.php из архива 3. Откройте файл /sys/inc/user.php и в самом конце пропишите сдедующие строки: if ($_SERVER['PHP_SELF'] != '/adm_panel/mysql.php') { require(H.'sys/classes/AntiHack.class.php'); $lq = new AntiHack; if (isset($_GET))$_GET = $lq->filter($_GET, 'get'); if (isset($_POST))$_POST = $lq->filter($_POST, 'post'); if (isset($_FILES))$_FILES = $lq->filter($_FILES, 'files'); if (isset($_COOKIE))$_COOKIE = $lq->filter($_COOKIE, 'cookie'); if (isset($_SERVER))$_SERVER = $lq->filter($_SERVER, 'server'); if (isset($_REQUEST))$_REQUEST = $lq->filter($_REQUEST, 'request'); unset($lq); } /**обновление от 02.09.2013 *участились случаи появления зашифрованной формы для выгрузки шела. так как у этих деятелей мозг не особо развит, эта строка их обломает***/ if (isset($_GET['_1118538408(0)']))die('Бекжан-баклажан? или Казама? )) покури пока мох, изучая учебник php. (с) Кредитор'); 4. Откройте файл /sys/fnc/output_text.php и перед строкой if ($htnl == true)..... добавьте строку: $str = html_entity_decode($str, ENT_QUOTES, 'UTF-8'); По сути это все. Если в дальнейшем у вас будут появляться например в форуме, новостях или почте перед кавычками символы |, откройте файл /sys/inc/output_text.php и в самом конце функции файла измените строку(у всех она может отличаться): return $str; на return stripslashes($str); // или например return esc($str); на return stripslashes(esc($str)); // суть думаю ясна. Если что, все поясню 5. После установки класса, фильтровать данные в форме ввода уже не нужно. Передаваемые параметры в $_GET будут обработаны регуляркой и избавятся от опасных символов. Остальные глобальные переменные обработаны функцией htmlentities(), что обезопасит формы. //Если в чем то сомневаетесь, обращайтесь, я подскажу Рекомендации: Зная любовь пользователей к сливу всего купленного в обменники, напоминаю, что хуже вы делаете не мне. открытый исходный код всегда уязвим и, рано или поздно, Вам самим придется заплатить в десятки раз больше за индивидуальную безопасность Вашего ресурса. Будьте людьми наконец. Повзрослейте