您的位置:首页 > 其它

CTF实验吧-上传绕过【0x00截断】

2017-08-01 18:14 911 查看
原题内容:

bypass the upload

格式:flag{}

解题链接: http://ctf5.shiyanbar.com/web/upload 

首先随手上传了一个图片,



得到返回:



再尝试php文件,得到返回



很明显,题意为卡住php后缀,逼迫你上传文件后缀为jpg等类型,典型的上传绕过问题上传绕过解题思路可参考我转载的【文件上传检测的基本思路】,一般按照思路逐步尝试即可,简单的大小写,加后缀不可过,此题无js,猜测为0x00截断上传,此处仔细分析何为0x00截断上传及其原理

简单举个例子:

<%
path="upfiles/picture/"
file="20121212.jpg"
upfilename=path & file '最后的上传地址
%>

upfilename即为最终名字,意思为如果地址为picture/1.php+,文件名为1.jpg则最终上传上去的文件路径为picture/1.php+1.jpg,0x00截断的思路即为将+之后的内容忽略掉使上传文件1.jpg最终上传到1.php中,此处利用到的就是0x00的截断漏洞,下面用题目做具体说明:

首先bp上传图片,将数据包发到repeater,并对/uploads/后面加上1.php+,此处相当于上述例子中的path:



然后打开hex(16进制),找到+对应的编码:



0x00的意思为16进制00,所以讲+对应的进制改成00(至于怎么找到对应代码,看右边对应代码,找到第几行,从左到右,每个字母对应一个代码),改完直接go





内容就是这些了,flag自行尝试吧,有疑问欢迎留言或者私信
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: