upload-labs pass6-pass10

1.pass-6黑名单 空格绕过

直接上传肯定不可以
在这里插入图片描述
这个地方配置文件虽然只过滤了.htaccess,.user.ini也是不可用的,因为这里进行了重命名,通过代码审计可以发现空格没有过滤,这是利用windows的一个特性,后缀后面有空格和没有空格是一样的
burp抓包,改一下后缀名,添加一个空格
在这里插入图片描述
复制图片地址,访问,成功执行
在这里插入图片描述

2.pass-7黑名单 点绕过

通过代码审计可以发现.没有被过滤了,这也是利用了windows的一个特性
burp抓包,后缀加点

在这里插入图片描述
复制图片连接,访问
在这里插入图片描述

3.黑名单,::$DATA绕过

::$DATA是windows的特性
在这里插入图片描述

通过和上一题对比可以发现,可以用::$DATA绕过,注意文件名被重命名了
抓包改后缀

在这里插入图片描述访问文件,成功执行
在这里插入图片描述
4.pass-9黑名单,点空格点绕过

在这里插入图片描述
这个地方要注意为什么和第8题源码是差不多的,只不过过滤::$data,而第8题却不能绕过,首先过滤空格和删除点的函数都是过滤一次的,当传入1.php. .,在第8题中遇到deldot,会删除.,剩下的1.php.%20,遇到strrchar,变量file_ext值为1.php,之后被重命名为20231456,而遇到trim被删除空格,最后变成了20231456.,只有一个点而没有后缀,不能被解析成php

为什么双写:: D A T A 不能绕过 ? 变量 f i l e n a m e 值没有被过滤,是因为 f i l e e x t 用函数过滤的 , 而 f i l e n a m e 值为 1. p h p : : DATA不能绕过? 变量file_name值没有被过滤,是因为file_ext用函数过滤的,而file_name值为 1.php:: DATA不能绕过?变量filename值没有被过滤,是因为fileext用函数过滤的,filename值为1.php::DA:: D A T A T A w i n d o w s 文件上传时,文件命名是不能含有 : w i n d o w s 会自动把 : : DATATA windows文件上传时,文件命名是不能含有: windows会自动把:: DATATAwindows文件上传时,文件命名是不能含有:windows会自动把::DATA去掉,但上面的不识别时不能被去掉的
在这里插入图片描述

抓包改后缀
在这里插入图片描述
访问文件
在这里插入图片描述
5.pass-10黑名单,双写绕过
在这里插入图片描述
通过审计代码可以发现是用了str_ireplace这个函数,这个函数只会过滤一次

抓包改后缀

在这里插入图片描述

访问
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值