web安全-6-CSRF漏洞

  1. 在不登出A的情况下,访问危险网站B

2、GET型CSRF

什么是GET型CSRF,就是上图中第4点,发送的请求是GET型就是

2.1、实战解说

这里使用pikachu靶场的GET CSRF进行演示

2.1.1、常规用户操作

这有一个登录窗口,我们根据提示输入账号密码就可以进入
在这里插入图片描述
登录后就可以看到这个个人中心
在这里插入图片描述
继续我们可以修改个人信息,这就是一个登录的流程
在这里插入图片描述

以上这些操作都是用户自己修改的操作,黑客如何修改呢

2.1.2、黑客操作

1、黑客首先自己搭建一个网站,比如hs网站,我这使用phpstudy搭建
//大家可以自己弄一个,网站内容不重要主要是部分代码
在这里插入图片描述
在这里插入图片描述

黑客在这个网站中植入一个恶意代码,当用户登录网站后,再访问这个网站就可以完成伪造请求攻击

2、黑客首先自己先去登录这个pikachu抓去修改密码的包,分析包的情况,是get请求,并进行了编码
在这里插入图片描述
我们现在就是要构造一份这样假的东西

3、把get后的报文复制一份

/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=%E7%94%B7&phonenum=11111111111&add=%E5%8C%97%E4%BA%AC&email=111%40123.com&submit=submit

4、将这个url进行解码,我这里用的是notepad++编辑器
解码过程,选中url->点击插件->MIME tools->URL Decode

得到

/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=男&phonenum=11111111111&add=北京&email=111@123.com&submit=submit

5、接着在这前面加上访问的网址
http://localhost/pikachu/vul/csrf/csrfget/csrf_get_edit.php

代码变成这样

http://localhost/pikachu/vul/csrf/csrfget/csrf_get_edit.php?/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=男&phonenum=11111111111&add=北京&email=111@123.com&submit=submit

6、我们需要把这段内容植入到刚刚写的页面里。

这里我们构造一个按钮
在这里插入图片描述
7、把刚刚这个url写入action中,当用户点击后,就会执行
在这里插入图片描述
写入后,网页就变成这样了
在这里插入图片描述
这时候我们准备工作就做好了,接下来就请受害人登录pikachu然后再点击我们的网站就可以了

8、开始实施

1)、kobe先登录
在这里插入图片描述
2)、然后兄弟发来hs网站说好多小姐姐,然后kobe点击进去
在这里插入图片描述
3)、确实很多,然后kobe点击喜欢吗宝贝按钮,这时候信息就被修改了
在这里插入图片描述
他会根据你存储在浏览器上的cookie发送这条修改请求,攻击就成功了


如果修改错误,可以使用post的方法在试试,把method请求改为get就可以了

3、POST型CSRF

3.1、实战解说

靶场也是使用pikachu的靶场

1、废话不多说,先抓个包
在这里插入图片描述
我们可以看到这个修改内容,发送的是post请求,内容与get请求不一样的是,get是在url中,post请求内容是在请求体内。

同样接下来我们也要伪造一下链接,诱导用户去点击。

2、先修改个请求
在这里插入图片描述

在burpsuite中就有一个csrf工具
3、点击右键->相关工具->CSRF PoC生成
在这里插入图片描述
把这段CSRF PoC复制一下
在这里插入图片描述

<html>
  <!-- CSRF PoC - generated by Burp Suite Professional -->
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="http://localhost/pikachu/vul/csrf/csrfpost/csrf\_post\_edit.php" method="POST">
      <input type="hidden" name="sex" value="nan" />
      <input type="hidden" name="phonenum" value="888" />
      <input type="hidden" name="add" value="888" />
      <input type="hidden" name="email" value="888" />
      <input type="hidden" name="submit" value="submit" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

4、修改我们刚刚写的hs网站,把这段代码植入进去
在这里插入图片描述

页面就显示为:
在这里插入图片描述

接下来跟get一样,点击喜欢吗,就进行修改操作了

在这里插入图片描述

4、CSRF漏洞如何防范

1、验证 HTTP Referer 字段;
2、增加 token并验证

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 8
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值