CSRF(Cross Site Requests Forgery),跨站请求伪造。当用户已经登录了一些网站的同时,又点击一个带有CSRF漏洞的链接时,黑客可以使用用户的身份进行一些操作。
基于pikachu进行CSRF请求的攻击实验,实验达到目的是修改用户的个人信息:
1、首先搭建pikachu的靶场,然后进入CSRF漏洞测试页面,进入发现需要用户名和密码,点击右上角提示便可看到用户的账号密码:
2、随便登录一个账户,便发现登录成功。
3、此时我们构造一个CSRF恶意网站,然后将其投放到目标服务器上,构造攻击页面有两种方式,分别是通过bp生成以及通过CSRF工具生成
**3.1 **首先测试使用bp工具生成CSRF恶意网站
(1) 打开bp工具并建立一个浏览器
(2)重新登录测试页面,点击下方 修改个人信息 链接,然后开启监听状态
(3)修改个人信息并提交,此时bp拦截到我们提交的数据:
可以看到我们刚刚提交的数据:
(4)右键单机,选择Engagement tools下的Generate CSRF PoC,生成CSRF攻击网站:
(5)可以看到已经生成一个CSRF HTML代码,点击右下角 copy html ,然后将其粘贴到txt文档中,并修改后缀名为html:
(5)当用户访问到该页面,同时触发攻击时(这里是一个submit 按钮),用户的个人信息则被修改:
(6)刷新页面,此时我们发现我们的信息已经被修改完成:
3.2 使用 OWASP-CSRFTTester工具生成攻击网站
(1)双击run.bat,打开生成工具。可以看到监听端口为8008,那么可以设置浏览器代理。
(2)打开火狐浏览器并设置代理,监听端口为8008。推荐使用插件对代理进行快速管理(火狐利用插件快速切换代理状态)
(3)此时点击修改个人信息选项,并修改个人信息
(4)点击Start Recording 开始监听。然后点击页面submit按钮提交信息
(5) 发现CSRF获取到请求:
(6)选择请求数据,可以通过左下角参数判断是否为刚刚提交的表单修改请求(一般为第一条)
(7)这里选择使用img标签,然后点击generate HTML,并保存.此时CSRF攻击网站已经搭建完毕。
(8)查看源代码,可以看到我们生成的攻击文件
(8)当用户无意间访问该页面时,便受到了CSRF攻击(访问页面即触发攻击)
(9)刷新页面,发现用户信息已经被修改
4、CSRF预防
(1)同源策略:同源是指网页的URL协议、主机(IP)、端口号相同。
(2)关键业务验证策略(使用短信、人脸、邮件等方式进行验证)
版权归原作者 @hello_kitty@ 所有, 如有侵权,请联系我们删除。