今天早些时候,有人询问有关网络应用中输入验证策略的问题.
在撰写本文时,最重要的答案建议PHP只使用htmlspecialchars和mysql_real_escape_string.
我的问题是:这总是足够的吗?还有更多我们应该知道的吗?这些功能在哪里崩溃?
我有许多参数构成插入表单,例如:
x.Parameters.AddWithValue("@city", City.Text)
Run Code Online (Sandbox Code Playgroud)
我今天早上在网站上发生了一次失败的xss攻击,所以无论如何我都试图加强安全措施....
我应该像这样添加我的输入参数吗?
x.Parameters.AddWithValue("@city", HttpUtility.HtmlEncode(City.Text))
Run Code Online (Sandbox Code Playgroud)
还有什么我应该考虑避免攻击吗?