文件上传漏洞学习 6-10

Posted liqik

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件上传漏洞学习 6-10相关的知识,希望对你有一定的参考价值。

 

pass-06和pass-07:文件名后缀名后加空格或点

原理:

Win下xx.jpg[空格] 或xx.jpg.这两类文件都是不允许存在的,若这样命名,windows会默认除去空格或点 此处会删除末尾的点,但是没有去掉末尾的空格,因此上传一个.php空格文件即可。

用burp抓包,将上传的文件名后缀名php后面加  空格 或者 点

他们的代码 对比前面都是 缺少去除 文件名末尾的点和首尾去空的原因

 

pass-08:          ::$DATA绕过

 

NTFS文件系统包括对备用数据流的支持。这不是众所周知的功能,主要包括提供与Macintosh文件系统中的文件的兼容性。

备用数据流允许文件包含多个数据流。每个文件至少有一个数据流。在Windows中,此默认数据流称为:$ DATA。

上传.php::$DATA绕过。(仅限windows)

不是众所周知的更能所以 程序员在写黑名单的时候会忽略

 

burp抓包修改后缀名为.php::$DATA

相比之前的代码 缺少了这一行

 $file_ext = str_ireplace(‘::$DATA‘, ‘‘, $file_ext);//去除字符串::$DATA

 

 

pass-09:      一:.空格.绕过     二:Apache陌生后缀解析漏洞

 

一:点空格点  

技术图片

move_upload_file的文件名直接为用户上传的文件名,我们可控。且会删除文件名末尾的点和首尾去空

 

burp抓包 改文件后缀       .php.空格.

 

二:Apache陌生后缀解析漏洞

 

burp抓包  把 文件后缀改为    .jpg.php.asd  或者  .php.asd       试了一下asd可以换成其他的

Apache 读取后缀名是从后往前读的  不认识asd后缀 继续读前面的php后缀

 

以上是关于文件上传漏洞学习 6-10的主要内容,如果未能解决你的问题,请参考以下文章

《白帽子讲WEB安全》学习笔记之第8章 文件上传漏洞

PHP代码审计学习——文件上传

文件上传漏洞学习总结

[Web安全] XXE漏洞攻防学习(上)

上传突破学习笔记

php文件上传漏洞代码只允许上传图片