CSRF漏洞原理,通过csrf进行地址修改实验演示,token详解及常见防范措施

CSRF漏洞原理,通过csrf进行地址修改实验演示,token详解及常见防范措施

一、CSRF漏洞原理
Cross-site request forgery 简称为"CSRF"

在CSRF的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接)

然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击也就完成了

所以CSRF攻击也被称为为“one click”攻击

eg:
在这里插入图片描述
如果想要修改lucy的个人信息:

第一步 需要有lucy的权限
可以先自己注册一下 修改一下个人信息 用bp抓包 获得自己的URL

第二步 通过自己的URL进行修改 来欺骗lucy点击

—————————————————————

满足CSRF的条件:
1.开发人员没有防范CSRF 导致请求容易被伪造
2.攻击目标必须在点击伪造链接时 也刚好在登录这个网站
3.攻击者比较好骗

3个条件必须同时满足 所以CSRF安全级别较低

如何确认一个web系统存在CSRF漏洞:
1.对重要信息增删改查时 利用bp自己抓包 测试请求是否可以被伪造
2.是否有CSRF的token验证
3.确认凭证的有效期

—————————————————————
二、通过csrf进行地址修改实验演示

我们打开pikachu中的CSRF(get)
在这里插入图片描述

我们先进行登录
lucy/123456

在这里插入图片描述
我们修改一下地址
在这里插入图片描述
修改地址其实就是一个敏感信息的操作 我们打开bp
在这里插入图片描述
我们复制到记事本中

GET /pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=12345678922&add=shenyang&email=lucy%40pikachu.com&submit=submit

在这里插入图片描述
发现并没有看到token 所以后台并没有进行CSRF的防范

我们现在修改这个URL
在这里插入图片描述
在这里插入图片描述
将GET请求修改为完整的URL
http://127.0.0.1/pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=12345678922&add=beijing&email=lucy%40pikachu.com&submit=submit

现在只需要把这个URL发给lucy lucy打开之后
在这里插入图片描述
发现信息已经被修改了 该页面是恶意页面打开之后的效果 我们现在刷新一下原本的页面
在这里插入图片描述

发现也被修改 这样就成功修改了lucy的个人信息
攻击者就可以借此利用 来盗取lucy的一些信息

接下来我们演示一下post请求下
和之前一样 先进行登录 然后修改一下
用bp抓包
在这里插入图片描述
看到所有请求是由POST提交的 利用方法就是与XSS差不多的

就是制作一个恶意站点 复制一个类似的表单 让lucy点击访问

三、token详解及常见防范措施
造成CSRF的主要问题是链接容易被伪造
所以我们可以添加一个随机码 这就是token在这里插入图片描述

这是一个生成token的简单代码
正式的系统会比这个复杂一点

操作和之前一样 登录修改一下信息 用bp抓包
在这里插入图片描述
我们可以看到有一串token的随机码
在这里插入图片描述

token=733905cd26a84a514d611139178

每次请求token都会变化
我们打开控制台看一下

在这里插入图片描述

我们刚才又修改了一下信息 发现token变化了
每次都会进行token验证 所以就可以防止CSRF

在后端源码中 我们看到
在这里插入图片描述
只有当前端接受到的token和后端的token相同时 才会执行下面的操作 不相等则直接跳出

这里是后端制作token的代码
在这里插入图片描述

这是表单的代码
在这里插入图片描述

CSRF防范措施:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值