mysql_real_escape_string
достаточно для очистки ввода пользователя в большинстве ситуаций?PHP: Является ли mysql_real_escape_string достаточным для очистки ввода пользователя?
:: EDIT ::
Я имею в виду главным образом с точки зрения предотвращения инъекции SQL, но я в конечном счете хочу знать, могу ли я доверять пользовательские данные после того, как я применяю mysql_real_escape_string или, если я должен принять дополнительные меры по очистке перед тем, как передать его в приложение и базы данных.
Я вижу, что очистка HTML-символов важна, но я бы не счел нужным доверять пользователю.
T
XSS является огромной проблемой, если вы игнорируете это вы просите проблемы равной величины. Вы должны проверить на своем пути, но если вы не снимаете javascript при отображении пользовательского контента, это действительно тривиально, чтобы делать такие вещи, как Session Hijacking и XSS-атаки, что, откровенно говоря, проще, чем SQL-инъекция, но немного но люди так и не поняли. –
'mysql_real_escape_string' предназначен только для защиты от SQL-инъекций. Для других уязвимостей вам нужны другие инструменты. – Gumbo
@Gumbo mysql_real_we_really_mean_it_this_time_escape_string будет охватывать эти случаи. Когда он будет добавлен в ближайшее время. – David