upload-labs/Pass-18条件竞争绕过

根据代码可以看出,Pass-18 先保存了文件然后再判断文件是否合法,不合法就删除文件; 其他文件上传漏洞都是先判断文件是否合法然后再保存文件
因此可以知道,我们上传的不合法的文件是可以传到服务器的,在上传到服务器和文件删除之间会有一个间隙
我们可以利用这个间隙来绕过文件上传

1.准备一个文件内容为: <?php fputs(fopen('shell.php', 'w'), "<?php phpinfo();?>");?>的php文件,命名为con.php;这个代码的作用是将<?php phpinfo();?>写入到当前目录的shell.php中,构造一个一句话木马文件
2.上传con.php文件并抓包,对该请求包进行重放,也可以使用 Burp suite 的 Null payloads 进行爆破

3. 同时访问con.php文件并抓包,使用BP Null payloads 进行爆破,一但con.php 访问成功就表示服务器中已经生成了shell.php 文件
http://127.0.0.1/upload-labs/upload/con.php

4. 访问shell.php 文件成功,文件绕过成功

posted @ 2025-02-25 22:08  小圣爱学习  阅读(156)  评论(0)    收藏  举报