首页 >运维 >安全 >web文件上传漏洞的示例分析

web文件上传漏洞的示例分析

PHPz
PHPz转载
2023-05-25 10:49:371426浏览

文件上传功能模块

文件上传功能是大部分WEB应用的必备功能,网站允许用户自行上传头像、一些社交类网站允许用户上传照片、一些服务类网站需要用户上传证明材料的电子档、电商类网站允许用户上传图片展示商品情况等。若没有进行充分的安全措施,那么即便是看似微不足道的文件上传功能也会面临极高的安全风险。

web文件上传漏洞的示例分析

文件上传漏洞原理

当用户在在文件上传的功能模块处上传文件时,如果WEB应用在文件上传过程中没有对文件的安全性进行有效的校验,攻击者可以通过上传WEBshell等恶意文件对服务器进行攻击,这种情况下认为系统存在文件上传漏洞。

文件上传漏洞---webshell

最常见的文件上传漏洞的方法是上传网站木马(webshell)文件,WEBSHELL又称网页木马文件,根据开发语言的不同又分为ASP木马、PHP木马、JSP木马等,该类木马利用了脚本语言中的系统命令执行、文件读写等函数的功能,一旦上传到服务器被脚本引擎解析,攻击者就可以实现对服务器的控制。

网站木马(webshell)文件又分为大马和小马(一句话木马)、图片马等

大马:功能比较善,配合浏览器使用;代码量通常较大;隐蔽性相对较弱,代码量大,通常需要通过加密等方式来隐藏特征。

小马:功能简单,需要配合客户端使用;代码量通常较小;隐蔽性相对较强,容易通过变形隐藏特征,绕过过滤,通常与cknife工具一起使用。

图片马:当网站限制只能上传图片相关格式的时候,攻击者无法绕过限制即可尝试利用图片马来实现webshell操作。

文件上传漏洞绕过限制

一句话木马类似于,将该木马文件通过文件上传模块上传到服务器。$_POST['v']里面的参数v就是我们的可以利用的参数,我们将我们要执行的指令通过参数v传到服务器来执行;或者利用cknife工具来实现操作目标服务器。

(一)该网页上传形式收到限制,需要符合jpg、jpeg、JPG、JPEG这几个类型格式,所以将原来的格式改为1.jpg格式(服务端校验)

web文件上传漏洞的示例分析

打开burp suite软件拦截数据包,将文件名改为1.php,这样才能运行php脚本,不然jpg后缀的文件虽然能够上传,但是没用运行的功能。

web文件上传漏洞的示例分析

web文件上传漏洞的示例分析

在hackbar插件中定义v=phpinfo();可以查看php当前状态的大量信息

web文件上传漏洞的示例分析

(二)这个页面限制了上传的格式(MIME),需要将文件格式改为JPEG或者PNG(服务端校验)

web文件上传漏洞的示例分析

用burp suite拦截信息,将content-Type改为image/png

web文件上传漏洞的示例分析

用hackbar工具定义参数v=phoinfo();查看php状态信息

web文件上传漏洞的示例分析

(三)该页面对文件后缀进行了筛选,对php类型的文件不进行接受(服务端校验)

web文件上传漏洞的示例分析

打开burp suite软件拦截信息,将文件名改为1.PHp,绕开web服务器的识别

web文件上传漏洞的示例分析

用hackbar定义v=system(ipconfig);

web文件上传漏洞的示例分析(四)使用截断的方式将jpg截断。这句话有些混淆了。正确的写法应该是: 1. 使用「%00」来截断文件名的文件上传漏洞。 2. 在使用「%00」时,可以使用「ctrl+shift+u」来将其编译。

web文件上传漏洞的示例分析1.php%00.jpg,%00用ctrl+shift+u来编译

web文件上传漏洞的示例分析

用hackbar工具定义参数v=phoinfo();查看php状态信息web文件上传漏洞的示例分析(五)该网页只允许上传图片,修改后缀名无效

web文件上传漏洞的示例分析

上传b374k.jpg图片马,登入的密码为b374kweb文件上传漏洞的示例分析

利用浏览器即可使用图片马进行webshell操作

web文件上传漏洞的示例分析该页面允许上传的文件类型包括jpg、jpeg、png、gif和7z。可以利用apach识别不了后缀名时,从后往前识别扩展名的方式,将1.jpg通过burp改为1.php.7z,则变成压缩形式的文件。

web文件上传漏洞的示例分析

通过burp软件抓包将1.jpg通过burp改为1.php.7z,则变成压缩形式的文件。

web文件上传漏洞的示例分析

用hackbar工具定义参数v=phoinfo();查看php状态信息

web文件上传漏洞的示例分析

文件上传漏洞在web安全里面算是比较常见且危害较大的漏洞,建站厂商可以在此方面增加防范力度:如加强文件后缀名黑名单的范围;对上传文件的名字进行随机修改;上传文件的临时目录和保存目录不允许执行权限等。

以上是web文件上传漏洞的示例分析的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:yisu.com。如有侵权,请联系admin@php.cn删除