修复XSS跨站漏洞

XSS跨站漏洞最终形成的原因是对输入与输出没有严格过滤。

1、输入与输出

在HTML中,<,>,",',&都有比较特殊的意义。HTML标签,属性就是由这几个符合组成的。PHP中提供了 htmlspecialchars()、htmlentities()函数可以把一些预定的字符转换为HTML实体。

&成为&amp;

"成为&quot;

'成为&#039;

<成为&lt;

成为&gt;

2、HttpOnly

HttpOnly对防御XSS漏洞不起作用,主要是为了解决XSS漏洞后续的Cookie劫持攻击。

HttpOnly用来阻止客户端脚本访问Cookie。带有HttpOnly的Cookie将不能被JavaScript获取。

HttpOnly只是防御Cookie盗取的一种手段,并不是绝对安全,防御XSS的关键还是要靠过滤输入与输出。

 

posted @ 2018-11-03 23:02  s1lenc3  阅读(3428)  评论(0编辑  收藏  举报