上传绕过

00截断

文件名后缀就一个%00字节,可以截断某些函数对文件名的判断。在许多语言函数中,处理字符串的函数中0x00被认为是终止符

例如:网站上传函数处理xxx.php%00.jpg时,首先后缀名是合格的jpg格式,可以上传,在保存文件时,遇到%00字符丢弃后面的jpg,文件后缀最终保存的后缀名为xxx.php


在多次输入实验可知这里需要上传一个jpg文件并且保存为一个php文件

所以这里我打开火狐和bp

挂好代理之后上传新建的一个jpg文件(1.jpg),然后用bp拦截下发送到Repeater进行分析

看到  /uploads/  为上传路径,所以我直接在后面写1.php .jpg(1点PHP空格点JPG)

这里空格会在十六进制上显示20,而不是00,所以我需要打开Hex,找到这一行,把20改成00,回到Raw,发现空格已经变成了一个空字符,

直接GO,在右边得到FLAG过关

你可能感兴趣的:(writeup)