|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
superpupervest |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 24.9.2018 Репутация: нет Всего: нет |
Я не занимаюсь технической поддержкой сайтов, но так уж сложилось, что ко мне часто обращаются за помощью. С одной стороны отказывать неудобно, да и не выгодно с коммерческой точки зрения, с другой за большое спасибо в магазине тоже не расплатишься. Поэтому я решил написать универсальное решение, но столкнулся с некоторыми проблемами. Суть решения заключается в том, чтобы отловить данные POST, GET, COOKIE и обработать их еще до того, как сайт произведет с ними какие-либо действия. Вот собственно сам код
Тоже самое я сделал по аналогии с _GET и _COOKIE Основные недостатки. 1) У меня так и не вышло обработать, а точнее перезаписать их внутри функции и передать _POST, _GET и _COOKIE в качестве переменных, а главное, как следствие, обработать многомерные массивы данных рекурсивно. Соответственно $_POST[][], $_POST[][][] и тд уже обработать не выйдет и каждый такой массив надо вставлять отдельно. Массив может быть бесконечно большой, а код получится бесконечно громозкий. 2) Не охота убирать функцию mysql_real_escape_string ведь никогда не знаешь, где ее забыли упомянуть, но возникает проблема излишнего экранирования символов. 3) strip_tags удаляет все теги. Мне бы не хотелось убирать все, а лишь самые опасные теги, но беда в том, что в дополнительных параметрах можно указать только теги, которые нужно оставить. Конечно, можно использовать регулярные выражения, но к сожалению, нет уверенности в том, что не забудешь что-нибудь важное, поэтому если у кого-то есть отличная замена этому, то предлагаю собрать все в кучу и избавиться от strip_tags 4) Ну и жду других советов по данному вопросу. |
|||
|
||||
Vardoulacha |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 184 Регистрация: 11.8.2005 Репутация: 7 Всего: 8 |
За использование расширения mysql_ программист должен гореть в аду
Написано уже вагон и маленькая тележка инструментов для фильтрации xss, тем более xss принято фильтровать ПЕРЕД ВЫВОДОМ, а не перед вставкой в базу А от sql-инъекций также легко защитится используя как минимум PDO, или хотя бы какой-нибудь query-builder коих тоже на просторах интернета как грязи и все умеют в защиту sql-инъекций И уж если сайт написан без использования этих инструментов, в 2019 году, то такой сайт должен тоже гореть в аду, а нищеброды заказчики должны страдать )) А если это древний сайт, то логично что пора его обновлять с учетом современных реалий А раз вы используете расширение mysql_ то эти сайты 100% устарели, PHP 7.0 уже в январе 2019 умер, скоро уже 7.1 умрет, так что делайте выводы, вместо костылей может надо сайт обновит и перевести на рельсы PHP 7+ заодно и скорость увеличится |
|||
|
||||
Xahina |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 25.12.2020 Репутация: нет Всего: нет |
Модератор: Сообщение скрыто. |
|||
|
||||
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |