CSRF(跨站请求伪造)
攻击原理

当用户成功登录网站A后,网站A下发cookie并保存在浏览器中。当用户访问网站B时网页中存在引诱用户点击的内容(一般是一个链接,指向网站A的一个API接口),当用户点击该引诱内容时,会访问网站A的API接口获取到网站A的数据。
防御措施
- Token验证
- Referer验证
- 隐藏令牌
XSS(跨域脚本攻击)
攻击原理
恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
攻击方式
反射型
发出请求时,XSS代码出现在URL中,作为输出提交到服务端,服务端解析响应后,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码。这个过程像一次反射,故叫反射型XSS。
储存型
存储型XSS和反射型XSS的差别仅在于提交的代码会存储在服务端,下次 请求目标页面是不用再次提交XSS代码。
防御措施
- 编码:
- 对用户输入的数据进行HTML Entity编码
- 过滤:
- 移除用户上传的DOM属性,如onerror等
- 移除用户上传的Style节点、Script节点、Iframe节点等
- 校正
- 避免直接对HTML Entity解码
- 使用DOM Parse解码,校正不配对的DOM标签
网友评论