文件上传2----前端JS验证与后端文件类型验证绕过

编程知识 更新时间:2023-04-03 21:35:57

一、前端过滤绕过(Less-1)

前期准备:

菜刀、php一句话木马一个。

情况描述:

按照题目要求,需要上传一个图片。但是我们准备的是一个php的木马文件。先上传试一下。结果发现,对文件后缀名进行了校验,要求输入特定后缀的文件。

对于文件后缀名的校验,无非前端和后端两种,先看一看前端源码,解雇,发现确实是前端JS验证导致的问题。

既然是前端校验,那方法就多了呀,首先可以考虑修改源码的匹配规则,或者是通过伪造后缀名绕过前端验证之后修改后缀名进行上传。

方法一:修改源码

刷新题目页面,通过burp代理截断服务端返回的数据包。找到JS源码,修改白名单直接删除函数内容,返回true.

修改后放行,然后再客户端选择PHP文件,进行上传即可。然后就会发现出现了图片信息,在源码中查看到图片的相对位置为上一级目录的upload目录下。


然后使用菜刀进行连接。

方法二:

在PHP木马后面添加一个".jpg"后缀,绕过前端验证,然后通过burp再修改文件名为php后缀上传即可。

二、后端文类型检测绕过

在Less-2中,我们查看源码发现,并没有less-1中的前端验证。

我们尝试直接上传一个php木马,发现返回信息为“文件类型不正确”,说明后端对文件类型进行了判断。

于是使用burpsuite抓包修改文件类型(content-type字段)。

发送并截取返回包,发现已经返回了我们上传的“图片”。


返回了我们上传的“图片”。

根据路径提示,在使用菜刀进行连接即可。

更多推荐

文件上传2----前端JS验证与后端文件类型验证绕过

本文发布于:2023-04-03 21:35:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/3f99535b15537585e2630d44c5f055e0.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:文件类型   文件上传   后端   JS

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 40050文章数
  • 14阅读数
  • 0评论数