• upload-labs闯关04-12


    upload-labs是一个包含了各种上传漏洞的靶场,搭建地址:https://github.com/c0ny1/upload-labs

    Pass-04

    1、查看源码可以看到此处也做了黑名单过滤,过滤的内容还不少

    2、此处黑名单没有过滤.htaccess后缀,所以此处可以上传.htaccess文件进行绕过

    3、.htaccess文件生效的前提条件一为httpd.conf文件中mod_rewrite模块开启,二为相同文件中的AllowOverride为All,然后就可以在网站目录下创建.htaccess文件

    4、新建文本文档,构造内容:AddType application/x-httpd-php .jpg,因为windows环境下创建文件必须得有文件名,所以得将文件另存为".htaccess"

    5、将.htaccess上传之后接着就可以将要上传的php文件后缀改为jpg从而进行绕过,注意这里使用老版本的phpstudy才能成功,原因我也不知道

    6、解析成功

    Pass-05

    1、查看源码之后发现.htaccess文件也进入了黑名单,但是仔细一看并没有转换为小写,因此可以通过大写绕过

    2、解析成功

    Pass-06

    1、查看源码之后虽然转化了小写,但是仔细一看并没有去除空格,因此可以通过加空格绕过,Windows下xx.jpg[空格] 或xx.jpg.这两类文件都是不允许存在的,若这样命名,windows会默认除去空格或点,虽然会删除末尾的点,但是不会删除末尾的空格,因此bp抓包,上传一个.php[空格].文件即可

    2、解析成功

    Pass-07

    1、查看源码之后虽然首尾去空了,但是仔细一看并没有尾部去点,因此可以通过加点绕过

    2、解析成功

    Pass-08

    1、查看源码之后虽然尾部去点了,但是仔细一看并没有去除::$DATA,因此可以通过加::$DATA绕过,注意仅windows适用

    2、解析成功

    Pass-09

    1、查看源码发现代码已经写得挺完整了,但是仔细一想每个函数只会执行一次,因此可以通过加点加空格再加点来绕过黑名单,经过过滤之后还剩一个点

    2、解析成功

    Pass-10

    1、查看源码之后发现这里使用了str_ireplace函数使用空格替代黑名单,但是可以通过双写后缀名绕过

    2、解析成功

    Pass-11

    1.查看源码发现此处使用了白名单,限制只能上传jpg,png,gif格式,但是在进行move_uploaded_file前,利用$_GET['save_path']和随机时间函数拼接成文件存储路径,利用GET传入构造文件存储路径,导致服务器最终存储的文件名可控,可以利用这个点进行绕过,这里利用0x00进行截断

    2、首先将php的版本调至小于5.3.4

    3、然后查看php.ini配置文件中的magic_quotes_gpc是否为OFF

    4、上传后缀为jpg的木马文件后抓包

    5、在save_path后增加木马文件名和%00,此时就可以进行php解析了

    6、解析成功

    Pass-12

    1、查看源码,此处与Pass-11相似,不同的是请求方法改成了POST方法,原理都是一样的

    2、不过需要注意的是两种方法的截断有点区别,%00通过get方式传递到服务器会被自动解码,所以就变成了ascii码中数值0对应的那个字符(null),这才能达到截断的目的,但是如果是通过post方式的话,加入%00不会被服务器解码,只会原样被参数变量接收,所以这里要通过修改post数据的十六进制来达到截断的目的

    3、同样抓包,增加木马文件名和a,此处a只是为了定位

    4、点击上方的Hex查看十六进制,找到phpa的十六进制数,将a的十六进制改成00

    5、点击Go,发现木马已写入

    6、解析正常

  • 相关阅读:
    解决中文环境下zabbix监控图形注释乱码
    SSIS CDC(Change Data Capture)组件在数据库中启用报错。 The error returned was 14234: 'The specified '@server' is invalid
    Tableau 群集部署
    访问Tableau自带的PostgreSQL数据库
    [译]Stairway to Integration Services Level 18 – 部署和执行
    [译]Stairway to Integration Services Level 16 – Flexible Source Locations (多文件导入)
    [译]Stairway to Integration Services Level 15 – SSIS 参数回顾
    [译]Stairway to Integration Services Level 14
    [译]Stairway to Integration Services Level 13
    [译]Stairway to Integration Services Level 12
  • 原文地址:https://www.cnblogs.com/Iamyoyodan/p/12983723.html
Copyright © 2020-2023  润新知