CSRF(跨站请求伪造)——————pikachu靶场

一:CSRF是什么

CSRF全称为跨站请求伪造,是一种网络攻击方式,在CSRF的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击就完成了。

二:CSRF的原理

CSRF攻击利用网站对于用户网页浏览器的信任,通过cookie来识别用户的,当用户成功进行身份验证之后浏览器就会得到一个标识其身份的cookie,只要不关闭浏览器或者退出登录,以后访问这个网站会带上这个cookie。

浏览器的同源策略:

 用于限制一个origin的文档或它加载的脚本如何能与另一个源的资源进行交互,能够减少恶意文档,减少可能被攻击媒介。

如果两个URL的

1.协议 http/https

2.域名 www.baidu.com www.qq.com

3.端口号 80 443 都相同,就称这两个URL同源。

如何确认一个web系统存在CSRF漏洞

1.对目标网站增删改的地方进行标记,并观察其逻辑,判断请求是否可以被伪造
例如修改管理员账号时,不需要验证旧密码,导致请求容易被伪造;对于敏感信息的修改并没有使用安全的token验证,导致请求容易被伪造

2.确认凭证的有效期
虽然退出或关闭了浏览器,但cookie仍然有效,或者session并没有过期,导致CSRF攻击变得简单

三:pikachu靶场

第一关 CSRF(get)

进入靶场发现是一个登陆界面,所以我们直接点击提示得到账号密码进行登录,登录后是一个个人信息页面

抓包看到如下内容

修改url里面的内容 

 /pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=9999999999&add=usa&email=lili%40pikachu.com&submit=submit

 将url输入到网页中发现信息已经被修改

第二关 CSRF(post) 

  右键点击要伪造的页面,找到engagement tools->generate CSRF POC,复制于文本文件上,并放在pikachu目录下

运行此文件于浏览器上 ,出现404页面,应该是以下原因csrf_post.php文件中如果检测到用户没有登录,会跳转到同文件夹(csrfpost)下的csrf_get_login.php,但事实上csrfpost文件夹下并没有这个文件,因此会返回404 ,只需将csrf_get_login.php改成csrf_post_login.php就可以了

第三关 CSRF(Token)

提交使用bp抓包,我们发现有token验证,返回包里也有token

可以发现,用一次token之后就会失效,返回包里含有下一次的token值,我们可以利用这一点来绕过,将数据包发送到重发器,将返回包里的token值复制过来,然后将地址改为tianjin,发送数据包后在返回包里进行渲染,我们可以看到,已成功修改

 

 在浏览器中刷新界面,也可以看到地址已修改成功​​​​​​​ 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值