| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Насколько важны для безопасности символы \n \r |
| Автор: phpsc 23.1.2011, 00:09 |
| Насколько важны для безопасности символы \n \r в функции mysql_real_escape_string? |
| Автор: skyboy 23.1.2011, 01:55 |
| |
| Автор: phpsc 23.1.2011, 11:56 |
| записыываем текст в textarea прогоняем через nl2br прогоняем через mysql_real_escape_string удаляюем все \n \r и только после этого текст из textarea попадает в БД mysql. sql-injection возможна? |
| Автор: Shark 23.1.2011, 17:27 | ||||||
phpsc, mysql_real_escape_string() - эта функция все экранирует! апострофы ', кавычки ", как бы юзвер не старался написать хотя бы
этот код не сработает, так как он в БД запишется так:
а еще рекомендую тебе при записи в БД удалять символы ", ', <, > после удаления в БД будет записана такая строка:
|
| Автор: skyboy 23.1.2011, 21:17 | ||||
ничего подобного. это он в запросе будет включен так:
вместо
Но второй вариант не означает "взлом". Просто запрос стал синтаксически неверным и при попытке выполнения выдаст ошибку. И вообще, не путай sql injection с XSS-уязвимостью! phpsc, не будет sql injection, mysql_real_escape_string защищает. |
| Автор: phpsc 24.1.2011, 15:20 |
| вот, наконец то хоть кто то ответил мне на эту тему=) Это если не использовать знаки < > то как же тогда пользователи будут размещать исходные коды своих программ на сайте? А при выводе инфы из БД, нужно прогнать через htmlspecialchars($var,ENV_NOQUOTES) и преобразовать bb-коды в html. |
| Автор: gta4kv 24.1.2011, 16:18 |
| Зачем вырезать < >, " и прочее? Да мало ли что юзер хочет написать. htmlspecialchars & *_real_escape_string. |