如果看到网站提示
那么我们可以尝试利用抓包工具修改其后缀名再上传
要查看httpd-conf文件中是否修改好了!!!
ASP:asa/cer/cdx ASPX:ashx/asmx/ascx PHP:php4/php5/phtml JSP:jspx/jspf 我们可以按对应的文件后缀名修改其后缀名大小写绕过
假设我们的php文件上不了,可以尝试修改一下文件名后缀的大小写,例如.Php尝试上传,如果不行再尝试.pHp,每种都去尝试一边。
后缀加空格绕过+代码审计后台的黑名单中如果存在php文件后缀名,
那么我们直接上传php文件肯定是上传不了的,
这样我们可以尝试修改后缀名,在后缀名最后那加上一个空格再尝试上传。
后缀名加–$DATA绕过+人工审计利用Windows的特性,我们在php文件后缀名上添加::$DATA进行上传绕过黑名单。
这个特性只是在Windows系统下存在,在Linux下是没有的。
后缀名加. .(点空格点)绕过+代码审计可能要根据后台代码的情况进行适当修改,
从这个代码来看,它是将后缀名末尾的点删除,然后获取后缀名转换成小写,最后首尾去空
最终我们上传的文件后缀名为x.php.
利用蚁剑或者菜刀连接后台即可。
双写绕过+代码审计如果能查看源码,观察到上述代码str_ireplace函数直接将我们的木马文件的后缀名直接删除过滤,那么我们可以利用双写后缀名来绕过该检查,例如php文件,可以修改为pphphp,后台一检测到php后缀名后立即清除掉,那么我们的文件后缀名就为php了,就可以用菜刀连接了。
GET00截断绕过+代码审计如果抓包看到save_path上传路径,我们尝试修改一下,看其是否可控
抓包在上传目录上文件名那添加%00
注意不是将文件名重命名添加%00,这样上传的%00是字符串,而我们需要的是16进制的%00,在操作系统中读取文件名时遇到%00就默认为已经读取完毕了,不管后面还存在什么文件名。然后将我们的一句话木马的文件名后缀修改能成功上传的类型进行上传即可。
如果上传路径不可控,我们还可以在抓包文件名上修改,添加一个+,因为加号的16进制为2b比较容易记住。我们到hex找到2b修改为00。
POST00截断绕过+代码审计思路跟GET请求差不多
在上传路径那添加一个文件名和+,到hex找到2b修改为00,将上传文件修改成符合要求的类型进行上传即可。
图片马绕过 图像二次渲染绕过


