Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
7 / 7 / 0
Регистрация: 15.05.2012
Сообщений: 81
1

Символ % в ключах GET параметров

17.04.2019, 11:18. Показов 527. Ответов 2

Добрый день

Разбирал чужую функцию дезинфекции гет параметров и наткнулся на такую регулярку:
preg_match('/^[a-z0-9:_\/|-]+$/i', $str)
Через нее проходят все ключи гет параметров ($_GET['ключ'] $_GET['name']['ключ'] и тп).
Если ключ не соответствует регулярке, он помечается как небезопасный.

Мне удивительно то что в регулярке отсутствует символ %, т.е. любая строка с ним будет опознаваться как невалидная.
Соответственно, строки пропущенные через urlencode заведомо работать не будут.

Подскажите, есть ли смысл бояться символа % в ключах ГЕТ параметров?
Может быть это справедливо для ПОСТ параметров? или для куков?
Гугл не помог мне в этом вопросе, надеюсь на ваш опыт.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2019, 11:18
Ответы с готовыми решениями:

О ключах в
Вот закрался ко мне вопросец один. По идее на странице должен быть один тег <h1> - в нем кратко...

Логика на ключах
Нагрузка 200 Ом, в нее надо вбухивать либо +200 микроампер, либо -200 микроампер. Т.е. менять...

Разобраться в связях и ключах
Помогите, пожалуйста!!!!помогите разобраться со связями и ключами! Таблица сотрудник имеет...

Замок на ключах iButton
Товарищи! Помогите найти схему на ключах ibutton на контроллере tini13a или ATmega8A. Объясню суть...

2
502 bad gateway
Эксперт PHP
4608 / 3748 / 1565
Регистрация: 24.04.2014
Сообщений: 10,984
17.04.2019, 11:54 2
Хотелось бы узнать зачем и от чего дезъинфецирует эта функция?
0
778 / 584 / 142
Регистрация: 01.10.2018
Сообщений: 2,318
17.04.2019, 13:10 3
Цитата Сообщение от neige-noir Посмотреть сообщение
Мне удивительно то что в регулярке отсутствует символ %, т.е. любая строка с ним будет опознаваться как невалидная.
Соответственно, строки пропущенные через urlencode заведомо работать не будут.
У $_GET и ключи, и значения автоматически декодируются.

Добавлено через 5 минут
Цитата Сообщение от neige-noir Посмотреть сообщение
Подскажите, есть ли смысл бояться символа % в ключах ГЕТ параметров?
Если безотносительно к чему-то, лучше бояться. С другой стороны, всего бояться - из дому не выходить Набивайте шишки на собственном опыте или правильно задавайте вопросы

Например, символ % используется в SQL совместно с LIKE. Но там же используется и, казалось бы, «безопасный» символ подчеркивания.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2019, 13:10

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Коммерческие слова в ключах
Добрый день Правда ли что если сайт не преследует коммерческой цели(продать чтото или купить или...

Вопрос о ключах в реестре
Где в реестре ХР есть ключи, позволяющие: 1) Не показывать системные файлы 2) Скрывать расширение...

Об $_SERVER[его ключах], getenv()
Не понятно в документации, есть список ключей, а в комментариях еще куча разбросанных. Нужно...

Перестройка индексов на первичных ключах
Всем доброе время суток! Начала разбираться с индексами в нашей базе, прочла в документации, ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.