csrf-基于Pikachu的学习
  owpmXY9hzjPv 14天前 45 0

CSRF-跨站请求伪造

CSRF的原理

CSRF攻击即Cross-site request forgery,跨站请求伪造,直白来说就是恶意网站伪装成用户,向被害网站发起操作请求。

img

  1. 用户输入账号信息请求登录A网站。
  2. A网站验证用户信息,通过验证后返回给用户一个cookie
  3. 在未退出网站A之前,在同一浏览器中请求了黑客构造的恶意网站B
  4. B网站收到用户请求后返回攻击性代码,构造访问A网站的语句
  5. 浏览器收到攻击性代码后,在用户不知情的情况下携带cookie信息请求了A网站。此时A网站不知道这是由B发起的。那么这时黑客就可以进行一下骚操作了!
两个条件:
1 用户访问站点A并产生了cookie

2 用户没有退出A同时访问了B

Pikachu靶场

CSRF-GET

打开题目,是一个登录框,我们直接提示一下,挑选一下受害者(因为CSRF需要用户已经登录,服务器给了一个cookie),那就allen登录一下吧。

image-20240502164451348

image-20240502164720175

接下来我们修改一下个人信息试试看,修改成:

image-20240502164918162

我试过一次后,url很快变了一下,我们看不到,所以burp启动,捕捉一下吧,发现的确有参数

image-20240502165014269

我们给参数值复制一下,然后把包发了,停止抓包了,我们就刚才那个参数开始去构造payload一下。

(我这里是搭建在本地了,所以你构造的时候需要写你靶场在的url)

http://localhost/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php?sex=hack&phonenum=hack&add=hack&email=hack&submit=submit

然后我们去浏览器拿着payload访问一下:
image-20240502165903837

啊啊啊,我的信息被改了,GG

CSRF-POST

这道题还是一个登录,这次选取受害者vince

image-20240502173338150

点击修改个人信息,然后burp抓包,发现是POST请求,所以不能直接访问链接去触发CSRF,需要我们去构造一个html,这里我们直接用burp的工具生成

image-20240502173740736

生成如下,我们复制粘贴,创一个html文件

image-20240502173914829

image-20240502174027159

点击submit,发现信息被更改了

注意打开这个html文件的时候用的浏览器一定要与账号登陆的那个浏览器一样才行

image-20240502174610256

CSRF-token

这次受害对象我选的kevin

image-20240502175310976

点击修改个人信息,抓包看看怎么个事

image-20240502175404009

加了一个token值,token值每次都会改变,CSRF攻击就不起效了,收拾跑路吧!

CSRF的防御措施

javascript - CSRF是什么?有效的防御措施有哪些? - 前端_风雨开发路 - SegmentFault 思否

什么是CSRF?如何防御CSRF攻击?知了堂告诉你 - 知乎 (zhihu.com)

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 14天前 0

暂无评论

推荐阅读
  5NWiQFAVeqgX   2天前   4   0   0 网络安全
  OKgNPeBk991j   6小时前   7   0   0 网络安全
owpmXY9hzjPv