漏洞产生原因及原理
跨站请求伪造是指攻击者可以在第三方站点制造HTTP请求并以用户在目标站点的登录态发送到目标站点,而目标站点未校验请求来源使第三方成功伪造请求。
XSS利用站点内的信任用户,而CSRF则通过伪装成受信任用户的请求来利用受信任的网站。
与XSS区别
XSS是可以获取到用户的cookie,不需要伪造,是用户直接触发,它可以完成网站上脚本的任意功能
CSRF不知道cookie的详细信息,是利用cookie伪造成用户来向服务器发送请求
漏洞危害
欺骗用户的浏览器发送HTTP请求给目标站点
通过IMG标签会触发一个GET请求,可以利用它来实现CSRF攻击
漏洞防御
1 使用token
2 限制refer
3 使用验证码技术
漏洞案例演示
以DVWA演示一个案例
DVWA修改密码处存在CSRF,只需要通过点击点击链接,受害者的密码就会被修改
密码就在url请求中
这就是简单的 CSRF跨站请求伪造