HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 23.09.2009, 23:18
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию

Цитата:
Сообщение от vorona  
Как нада фильтровать вводимые данные, если нада разрешить все символы?
Входные данные никак фильтровать не надо. Нужно экранировать спецсимволы когда подставляешь данные в запрос, и прогонять через htmlspecialchars, когда выводишь на экран.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #2  
Старый 23.09.2009, 23:29
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

Цитата:
и прогонять через htmlspecialchars, когда выводишь на экран.
если до этого данные обрамлялись addslashes() то на выводе тоже нужно делать stripslashes(), это для Вороны заметка, иначе юзвер регнет ник O'Neal а отображаться будет как O\'Neal
 
Ответить с цитированием

  #3  
Старый 23.09.2009, 23:45
Qwazar
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме:
10605912

Репутация: 4693


По умолчанию

Цитата:
Сообщение от b3  
если до этого данные обрамлялись addslashes() то на выводе тоже нужно делать stripslashes(), это для Вороны заметка, иначе юзвер регнет ник O'Neal а отображаться будет как O\'Neal
Дык вообще массово данные никак обрамлять не надо, тогда и проблем не будет. Экранировать надо только непосредственно в запросе.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..

Мой блог:http://qwazar.ru/.
 
Ответить с цитированием

  #4  
Старый 23.09.2009, 23:50
vorona
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме:
390301

Репутация: 3
По умолчанию

а что, htmlspecialchars нельзя применять перед записью в файл?
 
Ответить с цитированием

  #5  
Старый 24.09.2009, 22:05
L I G A
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме:
4532332

Репутация: 1196


Отправить сообщение для L I G A с помощью ICQ
По умолчанию

Цитата:
Сообщение от vorona  
а что, htmlspecialchars нельзя применять перед записью в файл?
зачем искажать данные?
 
Ответить с цитированием

  #6  
Старый 24.09.2009, 23:11
vorona
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме:
390301

Репутация: 3
По умолчанию

ну разницы ж то никакой. искажишь ты их до записи или после.
 
Ответить с цитированием

  #7  
Старый 25.09.2009, 17:26
L I G A
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме:
4532332

Репутация: 1196


Отправить сообщение для L I G A с помощью ICQ
По умолчанию

Цитата:
Сообщение от vorona  
ну разницы ж то никакой. искажишь ты их до записи или после.
разница есть.
К примеру ты захотел заменить все <,>, ' etc...
но нифига не выйдет потому как в файле будет вместо <,>- &lt;&gt;
 
Ответить с цитированием

  #8  
Старый 25.09.2009, 22:04
vorona
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме:
390301

Репутация: 3
По умолчанию

Цитата:
Сообщение от L I G A  
разница есть.
К примеру ты захотел заменить все <,>, ' etc...
но нифига не выйдет потому как в файле будет вместо <,>- &lt;&gt;
ясн
 
Ответить с цитированием

  #9  
Старый 25.09.2009, 03:15
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


Отправить сообщение для b3 с помощью ICQ
По умолчанию

Цитата:
ну разницы ж то никакой. искажишь ты их до записи или после.
Ты ничего не понял, никто их не искажает, просто при выводе в браузер нада заменить HTML тэга на аналоги, чтоб небыло XSS или ифреймов к примеру, а при записи в файл фильтровать незачем. При записи в БД нужно обрамлять ковычки, дабы небыло подзапросов, к примеру есть форма для ввода логина и пароля которая не фильтруется, пример:
Цитата:
$sql = "SELECT user,password FROM `users` WHERE user=$_POST['user'] and password = $_POST['password']";
В таком случае можно будет ввести логин: 1' OR 1=1 1 и любое значение в пароль, и авторизация будет успешной, поетому в таких местах стоит экранировать ковычки функцией addslashes();

ЗЫ в примере могут быть ошибки, пишу как говорится "с коленки" но смысл думаю понятен.
 
Ответить с цитированием

  #10  
Старый 25.09.2009, 09:33
vorona
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме:
390301

Репутация: 3
По умолчанию

Цитата:
Сообщение от b3  
Ты ничего не понял, никто их не искажает, просто при выводе в браузер нада заменить HTML тэга на аналоги, чтоб небыло XSS или ифреймов к примеру, а при записи в файл фильтровать незачем. При записи в БД нужно обрамлять ковычки, дабы небыло подзапросов, к примеру есть форма для ввода логина и пароля которая не фильтруется, пример:

В таком случае можно будет ввести логин: 1' OR 1=1 1 и любое значение в пароль, и авторизация будет успешной, поетому в таких местах стоит экранировать ковычки функцией addslashes();

ЗЫ в примере могут быть ошибки, пишу как говорится "с коленки" но смысл думаю понятен.
понял. спс.

и ещётакой вопросик:
как с помощью цыкла пройти по всем ГЕТ или ПОСТ запросам, которые поступили в скрипт?
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ