krafty
new Exception
Кавычки, слеши и безопасность скриптов
Добрый день!
Хочу поделиться своими соображениями по этой теме.
Я рассмотрю два случая. А вас попрошу оценить правильность моих утверждений.
Итак, первый случай - использование в запросе гет переменных.
.../script.php?param=...
Чтобы защититься от sql иньекций через адресную строку, необходимо выполнить сдедующее:
1. в запросе заключать в кавычки переменную $param, а если она целочисленного типа, то еще и применять к ней intval() (дробного - (float)$param )
2. использовать mysql_real_escape_string($param), которая прослешивает кавычки и другие спецсимволы
3. для использования в операторе LIKE нужно прослешить метасимволы поиска функцией addCslaches().
Второй случай - получение данных от пользователя, сохранение их в базе и вывод в браузер:
1. действия перед занесением в базу рассматривались выше
2. перед выводом в браузер необходимо применять к данным htmlspecialchars()
3. далее проверяем включен ли режим волшебных кавычек. если включен, то убиваем слеши в данных, поступающих от пользователя (get, post, cookie, ...).
С нетерпением жду рецензии!
Добрый день!
Хочу поделиться своими соображениями по этой теме.
Я рассмотрю два случая. А вас попрошу оценить правильность моих утверждений.
Итак, первый случай - использование в запросе гет переменных.
.../script.php?param=...
Чтобы защититься от sql иньекций через адресную строку, необходимо выполнить сдедующее:
1. в запросе заключать в кавычки переменную $param, а если она целочисленного типа, то еще и применять к ней intval() (дробного - (float)$param )
2. использовать mysql_real_escape_string($param), которая прослешивает кавычки и другие спецсимволы
3. для использования в операторе LIKE нужно прослешить метасимволы поиска функцией addCslaches().
Второй случай - получение данных от пользователя, сохранение их в базе и вывод в браузер:
1. действия перед занесением в базу рассматривались выше
2. перед выводом в браузер необходимо применять к данным htmlspecialchars()
3. далее проверяем включен ли режим волшебных кавычек. если включен, то убиваем слеши в данных, поступающих от пользователя (get, post, cookie, ...).
С нетерпением жду рецензии!
где нашёл