首先介绍 CSRF 的攻击原理,我们才能更好进行攻击。

CSRF 攻击原理

CSRF(Cross-site requestforgery 跨站请求伪造,原理攻击者通过伪装成受信任用户向目标服务发送请求实现攻击。

攻击过程

生成 cookie:用户 A 通过输入账号/密码登录网站 web1,此时浏览器将登录状态记录到本地 cookie 中;

获取 cookie:攻击中构建一条恶意网站 web2 的链接,受害者打开恶意链接后,将把本地保存的 cookie 信息送到恶意网站 web2;

伪造攻击:网站 web2 通过收到的用户 A 的 cookie 值,向网站 web1 发起恶意请求,例如转账支付,获取身份信息等目的。

使用到的工具:fiddler 抓包工具,Jmeter

攻击步骤

1、获取 cookie 值

登录网站,通过 fiddler 抓包工具,获取登录成功后的请求头中的 cookie 值。

大家肯定奇怪,明明访问首页的时候就已经生成了 cookie 值,为什么还登录呢?

虽然 cookie 值在打开首页时就已经生成,但此时的值未与具体用户关联,最多为游客的 cookie 值,因很多权限登录成功后才能访问,只有登录成功后才会将 cookie 值与用户进行关联。

2、实现 CSRF 攻击

1)在 Jmeter 中添加 “HTTP Cookie 管理器”;

填写 cookie 值,一般是 JSESSIONID 和域名;

2)添加攻击请求
添加进行攻击的目标请求地址和请求参数;

3)发起攻击
执行请求,查看结果。

成功实施攻击。
至于如何去修复这个漏洞,只能有劳开发大伽们了。


↙↙↙阅读原文可查看相关链接,并与作者交流