提示: 一、xss 1.问:xss和csrf区别是什么? 答: csrf是伪装信任用户进行操作,登陆会话状态都是正常的,xss不同。csrf成功的前提用户必须登录到目标站点,且用户浏览了攻击者控制的站点。与xss最为不同一点是csrf可以不用js就能达到目的,完全是正常用户操作。 csrf修复方法:cookie认证,非持久性cookie请求加入随机数,增加风险操作二次认证。 ------------------------------------------------------- 2.问:预防xss攻击有什么迅速的有效手段吗? 答: HttpOnly防止劫取cookie,另外还有owasp中也有防xss的API库。在前端对数据过滤一次,在后端也过滤一次,确保万无一失,没毛病。 ------------------------------------------------------- 3.问:xss过滤字符问题怎么办? **答:**尖括号,反斜杠等特殊字符一定要注意好,可以使用ESAPI提供的函数进行编码,具体参考一下GitChat文章标题内容的特殊字符转义,除了阿拉伯数字和字母,对其他所有的字符进行编码,只要该字符的ASCII码小于256。编码后输出的格式为 ª,以&#x开头,aa则是指该字符对应的十六进制数字,分号作为结束。 ------------------------------------------------------- 4.问:xss拿到的cookie该怎么利用? 答: cookie就是凭证,最简单的利用就是替换登陆请求的cookie就算利用了。