upload-lab题解1~20

Pass-01

javascript绕过,通过抓包修改文件后缀名

在这里插入图片描述
在这里插入图片描述

Pass-02

对MIME类型进行了检查,抓包修改MIME类型即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Pass-03

黑名单绕过
批量fuzz后缀名上传文件,比如cer,phtml等等偏僻的后缀都有可能被解析运行
在phpstudy中需要添加部署环境
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Pass-04

思路:上传.htacess文件,后上传php文件后缀任意,都可以被php解析执行
htaccess文件内容
SetHandler application/x-httpd-php
什么是.htaccess文件
概述来说,htaccess 文件是 Apache 服务器中的一个配置文件,它负责相关目录下的网页配置。
通过 htaccess 文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
由于windows不允许通过文件直接创建.htcaccess文件,可以通过rename来创建
在这里插入图片描述
上传.htaccess文件后,又上传
在这里插入图片描述
然后访问
在这里插入图片描述

Pass-05

过滤了.htaccess文件,但是没有过滤php大小写,使用phP可以绕过也可以修改.htaccess文件大小写的方式绕过
在这里插入图片描述
访问201907111505514027.phP
在这里插入图片描述

Pass-06

在判断后缀名的时候没有先去除多余的空格
思路:后缀名添加空格即可绕过后端php脚本的检测,再上传到windows服务器上,会自动去除后缀名后的空格。
在这里插入图片描述
在这里插入图片描述

Pass-07

根据windows系统特性会自动忽略最后一个点,添加点即可绕后端的php检测,而且可以正常解析
在这里插入图片描述
在这里插入图片描述

Pass-08

没有过滤::$DATA
在这里插入图片描述
访问的时候需要把php后面的去掉
在这里插入图片描述

Pass-09

思路:构造点加空格加点,经处理后文件名变成sad.php.,即可绕过。
在这里插入图片描述
在这里插入图片描述

Pass-10

思路:传一个普通的文件上去,会把php后缀过滤掉,但可以直接访问
在这里插入图片描述
还有个思路就是双写绕过

Pass-11

白名单绕过,%00截断,
上的文件:抓包修改文件名:1.php%00check.jpg
条件:php<5.3.4
magic_quotes_gpc=off
在这里插入图片描述

Pass-12(POST型)

这里需要用0x00截断,使用%00不行
在这里插入图片描述
php1对应的十六进制,把1的十六进制改为00
在这里插入图片描述
在这里插入图片描述

Pass-13

这里阅读源文件可知这里对文件前2字节内容进行了检测,这里上传的是图片木马,需要结合文件包含漏洞引用。
推荐制作工具:edjpgcom

Pass-14

这里也是一样,只是源文件对检测文件内容使用了不同的函数。

Pass-15

这里是用php_exif模块的exif_imagetype来检查文件内容

Pass-16

参照:(https://xz.aliyun.com/t/2657)

Pass-17

存在条件竞争:先将文件上传到服务器,然后通过rename修改名称,再通过unlink删除文件,因此可以通过条件竞争的方式在unlink之前,访问webshell
但是使用burpsuite爆破,然后访问没有成功

Pass-18

同17题一样,这里结合了apache解析漏洞

Pass-19

同11题一样,00截断,只是这里开启黑名单检测,用phP即可绕过。

Pass-20

由源码知,最终文件后缀名是$ f i l e [ c o u n t ( file[count( file[count(file) - 1],所以我们可以让
f i l e [ 0 ] 为 1. p h p / , 也 就 是 f i l e 数 组 第 一 个 变 量 值 , 然 后 设 置 f i l e [ 2 ] 的 值 , 这 样 既 可 以 让 e n d ( f i l e ) = j p g , 又 可 以 让 f i l e [ c o u n t ( file[0]为1.php/,也就是file数组第一个变量值,然后设置file[2]的值,这样既可以让 end(file)=jpg,又可以让file[count( file[0]1.php/,file,file[2],end(file)=jpg,file[count(file) - 1]的值为空
从而拼接后就是
1.php/.最终move_uploaded_file会忽略掉/.,最后为1.php
在这里插入图片描述
在这里插入图片描述
访问

在这里插入图片描述

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值