对于XSS的一般处理,输入的时候encode?输出的时候encode?哪种处理更优?
----------------------- 以下是精选回复-----------------------
答:现有的大多数框架是输出的时候encode,因为尽量保存原始输入信息。
答:显然输出的时候encode才是正确的,假设一串输入是abc,你输入时进行encode变成xyz,随后有人告诉你现在新发现了一个XSS漏洞,其中xy字符是要encode的不然会出问题,请问你要怎么处理数据库中已经有了的数据?再encode一次的话输出就出错了,不encode的话输出又是XSS漏洞
答:输入防 SQL Injection,输出防 XSS
答:输出时。如果怕忘掉就选用一个默认自动encode的模板引擎。
答:输出吧。 要考虑数据可能要给移动端使用
答:关于xss的解决方案可参考freebuf的作者写的文章 http://www.freebuf.com/author/jiayzhan
0条评论