|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
|
Как обрабатывать GET -запрос по маске (процедурному выражению)08.04.2022, 15:01. Показов 1121. Ответов 19
Здравствуйте! Мне необходимо написать код, который бы сначала фильтровал то, что пользователь хочет отправить через форму (метод GET), а потом уже добавлял полученное в url.
Нужно это для того, чтобы пользователи не могли проводить любого рода инъекции как через взаимодействие с адресной строкой, так и при отправке чего-либо через инпуты. Думаю, маска типа '<.*>' вполне подойдёт, но как её применить не очень понимаю...
0
|
|
| 08.04.2022, 15:01 | |
|
Ответы с готовыми решениями:
19
Как обрабатывать запрос по отдельному адресу? Как заставить mongo быстрее обрабатывать запрос? Сложный запрос по выражению |
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
|
| 08.04.2022, 15:13 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
|
| 08.04.2022, 16:13 [ТС] | |
|
websyst_ru, да, прошу прощения, именно их я и имел в виду
0
|
|
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
|||||||||||
| 08.04.2022, 16:25 | |||||||||||
|
Николай4ик, Значит пользуйтесь, эта статья поможет вам составить паттерн.
А убрать последовательность, согласно вашему паттерну, можно с помощью функции
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
||||||
| 08.04.2022, 16:38 [ТС] | ||||||
|
websyst_ru, спасибку я оставил, но именно так у меня сейчас и работает, но в url лезет невесть что, всё равно.
http://localhost/dashboard/tryer/123.php?name=%3Cscript%3Ealert%28%22nope%22%29%3C%2Fs cript%3E123 При чём ввожу я <script>alert("nope")</script>123 А если ещё и сделаю echo этой переменной, то получу просто 123 на выходе Добавлено через 1 минуту websyst_ru, я использовал FILTER_SANITIZE_FULL_SPECIAL_CHARS, поэтому такая регулярка Добавлено через 2 минуты websyst_ru, а когда ваш str_replace, вместо своего preg_replace подставил, так вообще теперь нигде ничего не откидывается
0
|
||||||
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
|||||||||||
| 08.04.2022, 16:43 | |||||||||||
|
это юникод, это нормальная реакция на текст в браузерной строке.
Совсем не понятно, зачем это всё изобретается и почему через get вы отправляете js. в гет-запросе нужно отбрасывать всё, что не является параметром или "значением=параметром". А вообще
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
|
| 08.04.2022, 16:45 [ТС] | |
|
websyst_ru, скрипт я передавал через инпут, дабы проверить сработает ли он
0
|
|
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
||||||
| 08.04.2022, 17:00 | ||||||
|
Николай4ик,
а не проще разрешить только то, что можно, а не пилить под всевозможные варианты?
0
|
||||||
|
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
|
||
| 08.04.2022, 18:08 | ||
|
0
|
||
|
Надуваю лягушек
289 / 219 / 93
Регистрация: 01.05.2014
Сообщений: 742
|
|||||||||||
| 09.04.2022, 06:09 | |||||||||||
|
Может так?
или так?
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
||||||
| 11.04.2022, 11:01 [ТС] | ||||||
|
Царь Бабай, а как Ваш первый вариант в код вставлять?
Вот, допустим, ест такая форма:
0
|
||||||
|
1 / 1 / 0
Регистрация: 10.04.2022
Сообщений: 33
|
|
| 11.04.2022, 11:15 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 10.04.2022
Сообщений: 33
|
||||||
| 11.04.2022, 11:27 | ||||||
|
Николай4ик, я тебе уже всё давал, но ты настойчиво лезешь в регулярки
в адресной строке - /?a=<script>alert('Я XSS-скрипт, но я не выполнился')</script>
0
|
||||||
|
0 / 0 / 0
Регистрация: 06.04.2022
Сообщений: 15
|
|
| 11.04.2022, 12:42 [ТС] | |
|
Debian, проблема в том, что при переходе по такой ссылке
http://localhost/exmple.php?%3... /script%3E Скрипт спокойно выполняется, а значит пассивная атака возможна Добавлено через 8 минут Да и если я поменяю name инпута через F12<script>alert('Я XSS-скрипт, но я не выполнился')</script> То всё сработает
0
|
|
|
1 / 1 / 0
Регистрация: 10.04.2022
Сообщений: 33
|
|
| 11.04.2022, 14:38 | |
|
Добавлено через 19 секунд
Николай4ик, бред
1
|
|
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
||||||
| 12.04.2022, 14:02 | ||||||
0
|
||||||
|
26 / 21 / 7
Регистрация: 23.03.2022
Сообщений: 87
|
|
| 13.04.2022, 16:05 | |
|
0
|
|
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
|
| 13.04.2022, 23:57 | |
|
firatov, чтобы собрать валидный get.
Функция сверяет допустимые параметры (казалось бы, зачем in_array =), тем самым любой гет-запрос сделать не получится.Только то, что разрешено затем убирает всё, что не может входить в запрос. Оставляет только цифры, буквы и два знака "-" и "_". Затем из оставшихся данных собирает валидный запрос http_build_query и вуа-ля, на выходе получаем то,что поймет и браузер и то,что нужно на странице по задумке автора
0
|
|
|
26 / 21 / 7
Регистрация: 23.03.2022
Сообщений: 87
|
||
| 14.04.2022, 01:24 | ||
|
По этому я и спросил, зачем нужен этот вызов в цикле ?
0
|
||
|
168 / 124 / 42
Регистрация: 25.10.2019
Сообщений: 476
|
|
| 14.04.2022, 02:20 | |
|
Но а так, да. Можно и вынести за пару скобочек)
0
|
|
| 14.04.2022, 02:20 | |
|
Помогаю со студенческими работами здесь
20
Php не хочет обрабатывать запрос POST через AJAX Запрос по маске Запрос по маске LINQ запрос на совпадение по маске Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|