如何保护表格免受脚本注入攻击。这是攻击者试图通过表单字段注入JS脚本的最常用攻击形式之一。此案例的验证必须检查表单字段中的特殊字符。寻找 互联网/ jquery等的建议,推荐和允许的字符和 字符掩码验证JS代码。
答案 0 :(得分:1)
您可以使用 HTML Purifier (如果您使用的是PHP,或者您可能拥有其他选项),以避免 XSS (cross-site-scripting) < / strong>攻击到很高的水平但记住没有解决方案是完美的或100%可靠的。这应该可以帮助你并始终记住服务器端验证总是最好的,而不是依赖于javascript哪些坏人可以绕过轻松禁用javascript。
对于 SQL Injection ,您需要从可用于操作或注入查询的查询中转义无效字符,并对要插入的所有值使用类型转换数据库。
请参阅 Security Guide 以获取更多安全风险以及如何避免这些风险。请注意,即使您没有使用PHP,安全性的基本思想也是一样的,这可以让您更好地了解安全性。
答案 1 :(得分:1)
如果您在html上下文中输出用户控制的输入,那么您可以在处理输入(html净化,自定义输入验证)和/或html在输出之前对值进行编码时跟踪其他人并进行消毒。
htmlencodng / strip标签(不需要标签)的情况是不够的:
此外,这些不会解释浏览器漏洞,例如不完整的UTF-8序列漏洞利用,内容类型嗅探攻击(UTF-7漏洞)等。
当然,您还必须处理数据以防止其他攻击(SQL或命令注入)。
答案 2 :(得分:1)
可能最好的参考是OWASP XSS Prevention Cheat Sheet
答案 3 :(得分:0)
ASP.NET有一个名为Request Validation的功能,可以防止服务器处理未编码的HTML。为了获得额外保护,可以使用AntiXSS library。
答案 4 :(得分:0)
您可以通过编码 html内容(例如
)来阻止脚本注入<强> Server.HtmlEncode(输入)强>
答案 5 :(得分:0)
还有OWASP EASPI。