漏洞发现-文件上传
文章平均质量分 75
以靶场方式介绍复现文件上传漏洞的所有类型
Edward Hopper
这个作者很懒,什么都没留下…
展开
-
【漏洞靶场】文件上传后端检测条件竞争--upload-labs
一、漏洞描述在upload-labs第18关中后端采用了白名单的方式对后缀进行检测。但是因为先上传后检测的原因,可以用burp的爆破模块一直上传文件,不断刷新访问路径,在删除之前访问文件可以绕过。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php直接看靶场代码,定义ext_arr为白名单数组,定义file_ext取上传文件的后缀,upload_file为拼接路径。$_FILES['myFile']['nam原创 2022-05-08 20:58:13 · 891 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测二次渲染绕过--upload-labs
一、漏洞描述在upload-labs第十七关使用了了二次渲染的方法对图片作了处理,将上传的png,jpg,gif图片进行尺寸等操作做成新图片。可以通过不同文件格式的特性对图片做处理,让服务端不改变插入语句的位置,然后再用文件包含的漏洞利用。这里详细对gif格式做处理。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php。但是在这里不能用php文件直接上传,需要制作图片马来绕过服务器检测文件二进制头信息。有两种方法,但原创 2022-05-06 22:47:15 · 1632 阅读 · 2 评论 -
【漏洞靶场】文件上传后端检测exif_imagetype()函数绕过--upload-labs
一、漏洞描述在upload-labs第十六关,服务器exit_imagetype()函数检测上传图片类型是否为白名单图片格式来验证上传文件合法性。可以通过制作图片马绕过,再配合文件包含漏洞解析文件来获取服务器配置信息。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php。但是在这里不能用php文件直接上传,需要制作图片马来绕过服务器检测文件二进制头信息。有两种方法,但都是一个意思,将写入图片里面方法一:准备z.p原创 2022-05-03 22:08:05 · 2294 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测getimagesize()函数绕过--upload-labs
一、漏洞描述在upload-labs第十五关,服务器getimagesize函数检测上传图片类型是否为白名单图片格式来验证上传文件合法性。可以通过制作图片马绕过,再配合文件包含漏洞解析文件来获取服务器配置信息。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php。但是在这里不能用php文件直接上传,需要制作图片马来绕过服务器检测文件二进制头信息。有两种方法,但都是一个意思,将写入图片里面方法一:准备z.php和一原创 2022-05-02 22:59:14 · 1034 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测图片马绕过--upload-labs
一、漏洞描述在upload-labs第十四关,服务器用检测上传图片两个字节是否为图片格式来验证上传文件合法性。可以通过制作图片马绕过,再配合文件包含漏洞解析文件来获取服务器配置信息。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php。但是在这里不能用php文件直接上传,需要制作图片马来绕过服务器检测文件二进制头信息。有两种方法,但都是一个意思,将写入图片里面方法一:准备z.php和一个真jpg图片用cmd命令行原创 2022-05-01 22:42:50 · 1457 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测post0x00绕过白名单--upload-labs
一、漏洞描述在uplaods-labs的第十三关中,服务器采用了白名单验证,意思为只能上传规定范围内的文件后缀。又将上传后的文件名改为了随机数。但是因为服务器上传路径用post方式传入变量拼接,且php版本小于5.3.4还得magic_quotes_gpc需要off状态。可以利用%00截断服务器后面拼接路径达到绕过。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.jpg直接看靶场的代码。strrpos()函数:原创 2022-04-30 22:47:59 · 933 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测get%00绕过白名单--upload-labs
一、漏洞描述在uplaods-labs的第十二关中,服务器采用了白名单验证,意思为只能上传规定范围内的文件后缀。又将上传后的文件名改为了随机数。但是因为服务器上传路径用get方式可控,且php版本小于5.3.4还得magic_quotes_gpc需要off状态。可以利用%00截断服务器后面拼接路径达到绕过。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php直接来看服务器的代码。strrpos()函数:查找字原创 2022-04-29 22:41:53 · 692 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测双写绕过--upload-labs
一、漏洞描述在upload-labs第十一关中,服务器脚本才用了黑名单的形式检测非法文件后缀,用了一系列函数来取得文件后缀名。使用str_ireplace()函数将非法后缀替换为空,函数意思是使用一个字符串替换另一个字符串中的一些字符,对大小写不铭感。因为只替换一次,可以采用双写文件后缀的方法绕过检测。二、漏洞发现先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php直接看第十一关的代码,先用file_exists函数判断文件原创 2022-04-28 22:52:09 · 1125 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测点绕过--upload-labs
一、漏洞描述在uploads-labs第八关中,服务器采用了黑名单的方式过滤上传文件的后缀,黑名单中包含了所有违法的后缀。包括可以让所有文件都当php脚本执行的.htaccess配置文件。但是在验证函数中缺少deldot()函数,从字符串的尾部开始,从后向前删除点,直到该字符串的末尾字符不是点为止。可以利用在文件后缀后再加点的方式绕过检测。二、漏洞发现在upload-labs第八关中就是采用了黑名单验证文件后缀的方式做文件上传的限制,先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路原创 2022-04-27 22:40:42 · 943 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测黑名单大小写绕过--upload-labs
一、漏洞描述在uploads-labs第六关中,服务器采用了黑名单的方式过滤上传文件的后缀,黑名单中包含了所有违法的后缀。包括可以让所有文件都当php脚本执行的.htaccess配置文件。但是在过滤函数中缺漏了将大写转化为小写的函数,可通过将文件后缀写为大写即可绕过。此方法靶场在liunx下不可用。因为liunx大小写敏感,默认windows大小写不敏感。二、漏洞发现在upload-labs第六关中就是采用了黑名单验证文件后缀的方式做文件上传的限制,先在本地写php脚本若上传成功,且知道上传后文原创 2022-04-26 22:47:46 · 1297 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测.htaccess黑名单绕过--upload-labs
一、漏洞描述htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。在upload-labs第四关中服务器使用了黑名单检测文件后缀是否合法,几乎黑名单里面覆盖了所有违规的后缀名,但是没有过滤.htaccess。通过先上传自定义的.htaccess,让所有文件都用php解析。再上传.jpg的文件,直接利用。原创 2022-04-25 22:38:02 · 1003 阅读 · 0 评论 -
【漏洞靶场】文件上传后端检测文件后缀黑名单绕过--upload-labs
一、漏洞描述服务器对上传文件的后缀做验证,不允许如.php的文件上传。这种检测方式是非常不安全的,只要变化未写在黑名单里面的文件后缀,即可绕过验证二、漏洞发现在upload-labs第三关中就是采用了黑名单验证文件后缀的方式做文件上传的限制,先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php直接看源码,file_exists判断文件路径是否存在,array数组函数中就是服务器的黑名单,trim() 函数:移除字符串两侧原创 2022-04-24 23:29:50 · 1524 阅读 · 0 评论 -
【漏洞靶场】文件上传只验证Content-type绕过--upload-labs
一、漏洞描述Content-Type是http头中一个字段,在响应中Content-Type标头告诉客户端实际返回的内容的内容类型。在请求中客户端告诉服务器实际发送的数据类型,如果服务器对改字段的内容做了限制可以通过burp改包绕过二、漏洞发现在upload-labs第二关中就是采用了限制content-type 的类型做文件上传的限制,先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php上传后发现返回文件类型不正确,请重新原创 2022-04-23 23:17:25 · 1961 阅读 · 0 评论 -
【漏洞靶场】文件上传基于前端js绕过--upload-labs
一、漏洞描述网页在前端做了js验证,不需要通过服务端做验证浏览器会拦截非法文件。判断方法,通过用burp抓包若没有数据交互可判断是前端限制。二、漏洞发现我用uploads-lab靶场pass-01做演示,先在本地写php脚本若上传成功,且知道上传后文件在网站保存的路径,可通过网页访问获得服务器配置信息,命名为z.php访问网页且上传恶意文件,发现限制后缀格式用burp抓取网页数据,发现并没有数据经过,可判断为前端限制,打开查看器,发现js将验证文件的合法性。查看check原创 2022-04-22 22:53:02 · 511 阅读 · 0 评论