форум вебмастероff на AlfaSpace.NET |
Ubuntu и Linux
|реактивный бесплатный хостинг
| Киноклуб. ВСЁ БЕСПЛАТНО!
база знаний хостинга
|
правила форума
| Начало ° Ответить ° Статистика ° Опрос ° Регистрация ° Поиск ° FAQ ° |
| Форум вебмастеров на AlfaSpace.NET / Создание сайта / Пользовательский ввод на PHP |
| Автор | Сообщение |
| gl_SPICE Участник 1757 |
# Дата: 18 Мар 2007 06:30 На сайте у пользователя есть возможность оставлять комментарии, в базу данных при этом пишется имя пользователя и сам текст комментария. Как можно удалить все нежелательные символы, HTML-теги, и вообще свести к минимуму возможность взлома и всяких пакостей? |
| Connected Pluged&Played 589 |
# Дата: 18 Мар 2007 07:00 htmlspecialchars($var, ENT_QUOTES); htmlentities($var); |
| gl_SPICE Участник 1757 |
# Дата: 18 Мар 2007 07:11 Connected, и всё? Что-то как-то просто . |
| Roler USA Hater 1340 |
# Дата: 18 Мар 2007 08:08 gl_SPICE Всё так ![]() |
| Serg Участник 1814 |
# Дата: 18 Мар 2007 10:18 свести к минимуму возможность взлома и всяких пакостей можно двумя функциями: htmlspecialchars() stripslashes() что делает первая все знают. Вторая удаляет обратные слеши, что исключает возможность применения каких-либо опасных кодов на перле. |
| gl_SPICE Участник 1757 |
# Дата: 18 Мар 2007 10:33 У меня сейчас полученный текст обрабатывается htmlspecialchars() и strip_tags(), ибо нужно всё-таки некоторые теги разрешить. Serg, за stripslashes() спасибо, посмотрю что за функция . С безопасностью у меня проблемы . |
| Михаил Ушел в бан) 2572 |
# Дата: 18 Мар 2007 12:00 ° Поправил: Михаил gl_SPICE В идеале любой забор переменной должен быть такой: $yep=htmlspecialchars(stripslashes(trim($_POST['yep']))); (можно еще preg_replace'ом что нибудь потереть )
А если охото сделать вообще неприступным, то можно данные при передаче от одного скрипта в другой шифровать base64_encode'ом )))) Тоды хрен кто-что подставит. |
| Roler USA Hater 1340 |
# Дата: 18 Мар 2007 12:37 » Михаил А если охото сделать вообще неприступным, то можно данные при передаче от одного скрипта в другой шифровать base64_encode'ом ))))Ухх, зверюга ![]() |
| acsid Alfa Guru 2431 |
# Дата: 18 Мар 2007 14:30 ° Поправил: acsid$str= strip_tags($str,"<img><b><i><a><font><br><p>"); в функции перечисляються только разрешённые теги(которые остануться в строке), все остильные теги в любом виде удаляються из строки.Таким образом можно не вводить ббкод И фсётаки всех этих функций мало для достижения безопасности.. особенно если всё остальное криво сделано |
| madman Участник 264 |
# Дата: 18 Мар 2007 15:56 Я б побоялся хранить в БД < и > и им подобные. Лутше их все таки както кодировать. |
| gl_SPICE Участник 1757 |
# Дата: 18 Мар 2007 17:32 » madman Я б побоялся хранить в БД < и > и им подобные.А почему? |
| Михаил Ушел в бан) 2572 |
# Дата: 18 Мар 2007 22:21 » gl_SPICE А почему?При доступе взломщика к базе такое можно наворотить. ЛУчший вариант - хранения там нее хтмл тегов, а бб кодов. |
| acsid Alfa Guru 2431 |
# Дата: 19 Мар 2007 01:51 » Михаил При доступе взломщика к базе такое можно наворотить. Если я уже в бд попаду (предположим что я взломщик) то как-то по барабану что и в каком виде там лежит, полюбому наворочу.... ![]() |
| Михаил Ушел в бан) 2572 |
# Дата: 19 Мар 2007 03:01 acsid ![]() |
| madman Участник 264 |
# Дата: 19 Мар 2007 05:55 » gl_SPICE » madman
Я б побоялся хранить в БД < и > и им подобные. А почему? В смысле не просто хранить, а разришать кому попало записывать в БД текст содержащий < и >, так ведь можна разшатать скрипт. А от этого нычего хорошго не будет. Лутше уж их кодировать и не переживать. Воть. ![]() |
|
Powered by miniBB forum software © 2001-2008
Powered by miniBB-gzipper. Original size:31970, gzipped size:9011 |