2017-赛客夏令营-Web-Uploadddd

ctfhub-2017-赛客夏令营-Web-Uploadddd

木马文件是可以上传,但是路径不知道
在这里插入图片描述于是扫描了一下目录。发现index.php.swp、flag.php,swp文件需要恢复

vim -r index.php.swp

得出源码

<?php
if (isset($_POST['submit'])){
    $file_path = "uploads/";
    $file_name = date("YmdHis") . rand(0,999) . ".php";
    move_uploaded_file($_FILES["file"]["tmp_name"], $file_path . $file_name);
    echo "上传成功!";
}

?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Web03</title>
</head>
<body>
    <form action="index.php" method="post" enctype="multipart/form-data">
        <input type="file" name='file'> 
        <input type="submit" name="submit" value="上传" /> 
    </form> 
</body> 
</html>

可以看出上传的路径了 uploads ,但是文件名更改为时间,还加了随机数,我本地搭建了一个,先尝试去掉随机的,可以发现是以时间命名,与提交的时间一样
在这里插入图片描述再加上随机的,这次随机的数是900
在这里插入图片描述这就一目了然了,随机数只能爆破了,直接就去实战可以了

在这里插入图片描述时间 20200818141506+0-999随机数.php,所以先写一个脚本生成字典

time = '20200818141506' #时间
s = ''
for i in range(1000):
	s += time+str(i)+'.php'
	s += '\n'
	print (time+str(i)+'.php')
filename = 'dir.txt'
with open(filename,'a',encoding='utf-8') as f:
    for i in s:
        f.writelines(i)

然后再使用Bp跑
在这里插入图片描述然后再复制字典粘贴上去,启动
在这里插入图片描述最后跑完,排一下(It is ok!是我在一句话中自己添加的,为了方便确认上传是否成功)
在这里插入图片描述蚁剑连接,html目录下拿到flag
在这里插入图片描述

.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值