逃脱<足以防止XSS攻击

时间:2014-04-02 00:49:02

标签: security xss

我和我的一位同事讨论了如何通过编码特定字符来防止XSS攻击。使用<转义&lt;字符是否可以解决问题?

当我查看attack vector cheat sheet published by OWASP时,似乎所有攻击都使用<字符作为执行的基础。

如果这不起作用,什么攻击会击败它?

1 个答案:

答案 0 :(得分:2)

不,对于HTML正文,您还需要对&字符进行编码,以防止攻击者逃脱逃逸。

查看XSS Experimental Minimal Encoding Rules: -

  

HTML正文(最高为HTML 4.01):

     
      
  • HTML实体编码< &

  •   
  • 在metatag中指定charset以避免使用UTF7 XSS

  •   
     

XHTML正文:

     

请注意,如果要在属性值中输入内容,则需要对具有特殊含义的所有字符进行正确编码。 XSS (Cross Site Scripting) Prevention Cheat Sheet提及对以下字符进行编码: -

  

&<>"'/

您还必须引用转义的属性值才能生效。