T-star高校挑战赛之文件上传

进来页面如下:

T-star高校挑战赛之文件上传

然后就是去上传一下文件,打开burpsuite,抓包。

首先上传内容是包含了一句话木马的jpg文件(6.jpg)

被告知文件内容不正确:

T-star高校挑战赛之文件上传

这边猜测是其检测了文件开头不符合要求,随即将开头改成GIF56a,发现文件上传成功:

T-star高校挑战赛之文件上传

但同时被告知文件大小不正确,这边采取的方式是添加注释,将其大小变成20kb:

T-star高校挑战赛之文件上传

成功上传,同时路径也被告知。

接来下尝试上传php文件,经过测试php和php4以及php5是被过滤掉了,这里采用了Php即大小写绕过方式,成功将文件上传上去。

T-star高校挑战赛之文件上传

1.在路径中可以看到php文件没有被解析,同时<?php被替换成了空字符,这里需要使用

<script language=”php”>进行绕过,经过测试在<script language=”php”>中,php同样也被过滤,这里可以使用pphphp双写绕过,即<script language=”pphphp”>

2.在返回的内容中发现eval被过滤了,这里使用assert断言进行绕过

3.同时经过测试,使用后缀pht,可以执行php代码,其余像phps和phtml都无法成功上传或者解析。

T-star高校挑战赛之文件上传

T-star高校挑战赛之文件上传

可以看到这里php代码被执行了,接下来用菜刀连接即可。

在/var/www下找到key文件,打开即可看到flag

T-star高校挑战赛之文件上传

T-star高校挑战赛之文件上传