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

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

文件上传

图片[1]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[2]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

图片[3]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

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

图片[4]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[5]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

已经没有回显了

图片[6]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

这里就需要观察这句话

图片[7]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

这里的UPLOAD_PATH是固定的 可猜解
date(“YmdHis”) 是时分秒 如下 传上去的时候要记一下

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

图片[8]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[9]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

6533是写的rand(1000,9999),暂时不用去管他
那么这里我爆破的范围就是20211122144220往前推5位 先试一试 然后后面跟上rand(1000,9999)这9000个数字
做一个9000个数字的字典出来

图片[10]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[11]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[12]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

图片[13]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

因为我这里传的是phpinfo,然后因为phtml的phpstudy的配置有问题,这里把题目改了一下,直接改成php是允许的后缀了,唯一的问题就是猜shell

图片[14]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

这里去掉了php的黑名单
这里还有一种变态版玩法,也就是可以给文件的名字加算法

图片[15]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

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

图片[16]-【红队笔记】文件上传1.1-关于涉及到时间和随机数路径爆破的文件上传问
题-Trojan

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
自古评论出人才是你吗?
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容