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

文件上传功能模块

文件上传功能是大部分WEB应用的必备功能,网站允许用户自行上传头像、一些社交类网站允许用户上传照片、一些服务类网站需要用户上传证明材料的电子档、电商类网站允许用户上传图片展示商品情况等。然而,看似不起眼的文件上传功能如果没有做好安全防护措施,就存在巨大的安全风险。

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

文件上传漏洞原理

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

文件上传漏洞—webshell

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

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

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

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

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

文件上传漏洞绕过限制

一句话木马类似于<?php eval($_POST[‘v’]); ?>,将该木马文件通过文件上传模块上传到服务器。$_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.php%00.jpg,%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文件上传漏洞的示例分析的全部内容了,更多与web文件上传漏洞的示例分析相关的内容可以搜索亿速云之前的文章或者浏览下面的文章进行学习哈!相信小编会给大家增添更多知识,希望大家能够支持一下亿速云!

文章标题:web文件上传漏洞的示例分析,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/28982

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云认证作者
上一篇 2022年9月22日 下午10:17
下一篇 2022年9月22日 下午10:18

相关推荐

  • 怎么修改pip install默认安装路径

    1. 修改pip install默认安装路径 一般使用Anaconda时会使用 pip install ### 来安装各类包,但默认安装路径在C盘,极大占用空间,作为强迫症,我们通过以下步骤来修改默认安装路径。 1.1 查看pip 默认安装位置 名列前茅步:通过win菜单,找到Prompt,点击进入…

    2022年8月30日
    3.6K00
  • html5里required的概念是什么

    在html5中,required是“必须”的意思,是指定标签中的一个属性;该属性是一个布尔属性,规定必须在提交之前填写输入的字段,若使用该属性,则字段是必填的,并且该属性是html5中新增的属性,语法为“<input required>”。 本教程操作环境:windows10系统、HTM…

    2022年9月2日
    80500
  • 怎么用Java比较两个对象的大小

    一. 为什么需要比较对象 上一节介绍了优先级队列,在优先级队列中插入的元素必须能比较大小,如果不能比较大小,如插入两个学生类型的元素,会报ClassCastException异常 示例: class Student{ String name; int age; public Student(Stri…

    2022年9月13日
    90700
  • windows todesk如何传输文件

    todesk传输文件的方法 1、 打开ToDesk,进入“设备列表”,选中想要传输的对象 2、选中后,点击右侧的“文件传输”,就能将需要的文件传给对方了 3、或者还有一种方法,就是点击工具栏箭头按钮 4、选择“文件” 5、最后在其中选中文件夹就可以进行文件的传输了。 感谢各位的阅读,以上就是“win…

    2022年9月26日
    2.3K00
  • windows 0x80131500显示网络如何解决

    0x80131500显示网络解决方法 一、 确认已经打开下面TLS的设置: 1、启动“Internet Explorer浏览器”,点击“设置”,打开“Internet 选项”-“高级” 2、勾选“使用 SSL 3.0”、“使用 TLS 1.0”、“使用 TLS 1.1”、“使用 TLS 1.2” 3…

    2022年9月18日
    51600
  • windows会声会影x5如何导出视频

    会声会影x5导出视频的方法 1、我们可以在界面的左上角或者上方找到“分享”按钮,点击它。 2、然后选择想要导出的方式,一般我们选择“创建视频文件”。 3、然后我们点击如图“创建视频文件”可以选择视频的格式。 4、这里我们选择mp4格式(大家可以根据需要自行选择),然后还可以选择更细致的格式。 5、选…

    2022年9月15日
    51100
  • 电脑蓝屏0x0000008e如何解决

    0x0000008e电脑蓝屏处理方法: 方法一: 1、遇到蓝屏问题,可能是软件不兼容、内存错误或操作不当造成的,可以依次解决。 2、首先开机的时候按下F8进入安全模式点击“最后一次正确的配置”这一项重启系统。 3、如果使用这个方法能进入系统,说明是软件不兼容或操作问题,注意不要再进行之前的操作即可。…

    2022年9月16日
    62800
  • mysql索引类型有哪些

    索引类型有:1、B-树索引,使表中的每一行都会在索引上有一个对应值;2、哈希索引,可根据索引列对应的哈希值的方法获取表的记录行;3、普通索引,允许在定义索引的列中插入重复值和空值;4、少数索引,可以避免数据出现重复;5、主键索引,是为主键字段创建的索引;6、空间索引,是对空间数据类型的字段建立的索引…

    2022年9月20日
    3.0K00
  • Sql注入bypass的示例分析

    waf是如何防御的 waf是通过使用一组规则来区分正常请求和恶意请求的。例如:安全狗、云锁、D盾等。 绕过:既然是存在规则匹配,那么就可以想方法绕过规则匹配。比如常见的黑名单限制,黑名单模型使用预设 一、sql注入bypass 环境搭建 win7 phpstdy(mysql:5.7.0 php:5.…

    2022年9月6日
    1.1K00
  • excel下拉列表怎么添加新内容

    excel下拉列表添加新内容的方法: 1、说先点击添加好的下拉,查看里面的内容。 2、之后选择这个下拉,点击任务栏的“数据”。 3、之后在点击下面的“数据验证”。 4、在弹出的窗口中进入设置,在“来源”中添加要新增的内容, 最后点击确定即可。 以上就是“excel下拉列表怎么添加新内容”这篇文章的所…

    2022年8月27日
    1.1K00
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部