Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

23.09.2009, 23:18
|
|
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме: 10605912
Репутация:
4693
|
|
Сообщение от vorona
Как нада фильтровать вводимые данные, если нада разрешить все символы? 
Входные данные никак фильтровать не надо. Нужно экранировать спецсимволы когда подставляешь данные в запрос, и прогонять через htmlspecialchars, когда выводишь на экран.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..
Мой блог: http://qwazar.ru/.
|
|
|

23.09.2009, 23:29
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме: 1698585
Репутация:
818
|
|
и прогонять через htmlspecialchars, когда выводишь на экран.
если до этого данные обрамлялись addslashes() то на выводе тоже нужно делать stripslashes(), это для Вороны заметка, иначе юзвер регнет ник O'Neal а отображаться будет как O\'Neal
|
|
|

23.09.2009, 23:45
|
|
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме: 10605912
Репутация:
4693
|
|
Сообщение от b3
если до этого данные обрамлялись addslashes() то на выводе тоже нужно делать stripslashes(), это для Вороны заметка, иначе юзвер регнет ник O'Neal а отображаться будет как O\'Neal
Дык вообще массово данные никак обрамлять не надо, тогда и проблем не будет. Экранировать надо только непосредственно в запросе.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..
Мой блог: http://qwazar.ru/.
|
|
|

23.09.2009, 23:50
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
а что, htmlspecialchars нельзя применять перед записью в файл?
|
|
|

24.09.2009, 22:05
|
|
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме: 4532332
Репутация:
1196
|
|
Сообщение от vorona
а что, htmlspecialchars нельзя применять перед записью в файл?
зачем искажать данные?
|
|
|

24.09.2009, 23:11
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
ну разницы ж то никакой. искажишь ты их до записи или после.
|
|
|

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

25.09.2009, 09:33
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
Сообщение от b3
Ты ничего не понял, никто их не искажает, просто при выводе в браузер нада заменить HTML тэга на аналоги, чтоб небыло XSS или ифреймов к примеру, а при записи в файл фильтровать незачем. При записи в БД нужно обрамлять ковычки, дабы небыло подзапросов, к примеру есть форма для ввода логина и пароля которая не фильтруется, пример:
В таком случае можно будет ввести логин: 1' OR 1=1 1 и любое значение в пароль, и авторизация будет успешной, поетому в таких местах стоит экранировать ковычки функцией addslashes();
ЗЫ в примере могут быть ошибки, пишу как говорится "с коленки" но смысл думаю понятен.
понял. спс.
и ещётакой вопросик:
как с помощью цыкла пройти по всем ГЕТ или ПОСТ запросам, которые поступили в скрипт?
|
|
|

25.09.2009, 09:34
|
|
Участник форума
Регистрация: 07.09.2009
Сообщений: 298
Провел на форуме: 390301
Репутация:
3
|
|
и такой:
какую форму, кроме \0 может принимать нулевой байт в пхп?
|
|
|

25.09.2009, 09:36
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.03.2008
Сообщений: 670
Провел на форуме: 4137635
Репутация:
2407
|
|
Например, так:
PHP код:
foreach($_GET as $key => $value)
{
$_GET[$key] = что_то_делаем($value);
}
Аналогично с $_POST, $_COOKIE.
А нулевой байт он везде нулевой байт. chr(0).
Последний раз редактировалось d_x; 25.09.2009 в 09:39..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|