为啥在对用户输出进行编码可以避免由用户输出的内容解析成html标签而造成的xss漏洞

我觉得你的题干已经回答了这个问题,从而不知道还要怎么回答了。。。你要相信,用户的输入都是有害的,所以你不信任任何用户的输入,你不允许他们输入任何html,你就用这htmlspecialchars来事先转义掉用户输入,以免用户输入被当成脚本来执行,这和用参数化查询来对抗sql注入的原理是一样的。你看,我把题干又复述了一遍,我只是想说,不要信任用户的输入,你得审视所有的输入和输出点,最好去学习一下xss,csrf,sql这三种最常见的web攻击手段,让自己的web开发更安全。谢谢。
■网友
另外 想说一下 htmlencode也不是一劳永逸的。 owasp虽然给定了标准 然而 在某些dom xss的条件下 由于html的优先性高于js 导致在二次解码的时候 html完成解码后 js再执行 也会造成xss


    推荐阅读