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

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

May 25, 2023 am 10:49 AM
web

文件上传功能模块

文件上传功能是大部分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中文网其他相关文章!

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

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器