【文件上传】关于涉及到时间和随机数路径爆破的问题

admin 2023年2月24日11:01:46评论20 views字数 979阅读3分15秒阅读模式

0x01 🌸简介

不光是文件上传漏洞,所有漏洞都是这样,一定要去看源码,因为光会利用是没有用的,只要改了源码,那么利用方式就会千变万化,但是源码万变不离其宗,就那么几下

一旦源码看多了,其实有时候看前台就能猜到后台是怎么写的,这也是一些大师傅能玩出一些神奇的操作的原因,就是源码读多了猜到了后台的写法。

0x02 🍘源码查看

【文件上传】关于涉及到时间和随机数路径爆破的问题

这是upload-labs上的一道例题,很多网上的文章都没讲这个文件名怎么去做绕过,这里补充一下,首先先分析源码,这是一个黑名单过滤,黑名单的过滤后缀名是

【文件上传】关于涉及到时间和随机数路径爆破的问题

这里可以用拓展名之类的方法进行绕过,比如phtml,传上去是这样样子的

【文件上传】关于涉及到时间和随机数路径爆破的问题

每一次传上去的文件名都是不一样的,是无法直接连接的,当然这道题是给了回显的,回显的代码在这里

【文件上传】关于涉及到时间和随机数路径爆破的问题

现在我们改一下这道题,改成没有回显

【文件上传】关于涉及到时间和随机数路径爆破的问题

已经没有回显了

【文件上传】关于涉及到时间和随机数路径爆破的问题

这里就需要观察这句话

【文件上传】关于涉及到时间和随机数路径爆破的问题

这里的UPLOAD_PATH是固定的 

可猜解 date("YmdHis") 是时分秒 

如下 传上去的时候要记一下

【文件上传】关于涉及到时间和随机数路径爆破的问题

rand(1000,9999)是1000-9999的随机数,总计9000位数 现在如果要得到对应的文件,那么就需要在传上去的时候卡一下时间,然后固定后面的随机数进行爆破即可 那么首先先固定上传时间,这里上传总会有误差,可能误差有个3s-5s的时间,不一定就一定是当下的那一秒,那么ok没有关系,我们多传几个就好了

如下:

【文件上传】关于涉及到时间和随机数路径爆破的问题

我是连点了五下 中间每次可能间隔0.2s这样,然后我的demo记录的时间是

【文件上传】关于涉及到时间和随机数路径爆破的问题

6533是写的rand(1000,9999),暂时不用去管他

那么这里我爆破的范围就是20211122144220往前推5位 

先试一试 然后后面跟上rand(1000,9999)这9000个数字 

做一个9000个数字的字典出来

【文件上传】关于涉及到时间和随机数路径爆破的问题
【文件上传】关于涉及到时间和随机数路径爆破的问题

然后拼接上前面的,再把秒数往前推几位

【文件上传】关于涉及到时间和随机数路径爆破的问题

扔进burp里面去跑,跑出来了

【文件上传】关于涉及到时间和随机数路径爆破的问题
【文件上传】关于涉及到时间和随机数路径爆破的问题

因为我这里传的是phpinfo

然后因为phtml的phpstudy的配置有问题,这里把题目改了一下

直接改成php是允许的后缀了

唯一的问题就是猜shell

【文件上传】关于涉及到时间和随机数路径爆破的问题

0x03 🚣‍♀️结束语

这里去掉了php的黑名单 这里还有一种变态版玩法

也就是可以给文件的名字加算法,

比如:

【文件上传】关于涉及到时间和随机数路径爆破的问题

我加上了这玩意,传上来的文件名就变成了这样

【文件上传】关于涉及到时间和随机数路径爆破的问题

其实也可以猜,但是这么变态的开发估计比较少

但也有,像这种的话,黑盒估计难了,得把源码拖过来才可以【文件上传】关于涉及到时间和随机数路径爆破的问题


原文始发于微信公众号(猫因的安全):【文件上传】关于涉及到时间和随机数路径爆破的问题

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年2月24日11:01:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【文件上传】关于涉及到时间和随机数路径爆破的问题http://cn-sec.com/archives/1267027.html

发表评论

匿名网友 填写信息