[BUUOJ记录] [GXYCTF2019]BabyUpload

CTF三大骗局:Baby Easy Funny,本题主要考察.htaccess文件解析文件、文件类型检测绕过

打开题目给了一个上传点,上传一个php文件看看过滤规则

 

 “后缀名不能有ph”直接禁掉了所有可以直接执行php的后缀名,自然想到利用.user.ini或.htaccess文件来将其他文件解析成PHP文件

看一下中间件是什么:

 

 发现是Apache直接上传一个.htaccess来试试,.htaccesee用途如下:

.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能

.htaccess源码如下:

<FilesMatch "jpg"> 
    SetHandler application/x-httpd-php
</FilesMatch>

 

大概判断一下检测方式,猜测应该是Content-type类型检测

Burp抓包修改Content-type类型为image/jpeg即可

 

 

 

 上传成功,然后上传一个jpg图片马,拿到Shell,在根目录下发现Flag

 

 

 

网上看了看其他师傅的writeup,好像说原题是每3s删除一次上传的文件,多了一个条件竞争的考察点

就算加上这个考察点,依旧可以通过Burp不断重放请求或者是上传一个内存不死马来解决(这方法有点脏,还是用Burp重放来解决)题目比较简单

 

posted @ 2020-03-03 21:52  Ye'sBlog  阅读(903)  评论(0编辑  收藏  举报