文件上传漏洞--Upload-labs--Pass17--条件竞争

一、条件竞争原理(结合代码审计)

1、首先进行代码审计,查看源代码。

我们可知,将文件上传至服务器后,不会被立即删除,而是做短暂的停留,中间会有一小部分时间差,这部分时间差是代码进行if判断的时间,这部分时间足够执行一句代码,我们利用这段时间差和一段代码就可以达到上传含有恶意代码的非法文件的目的,这就是"条件竞争"。

2、test.php 中的内容。

执行代码,创造一个名为 shell.php 的文件,shell.php 中写有 <?php phpinfo() ?>。这样我们在test.php 在后台短暂停留的时间内,只要访问它并执行代码,它就会在 upload 中创建 shell.php文件,达到上传非法文件的目的。


二、通关思路

1、上传 test.php 文件,使用 Burpsuite 进行拦截,并将拦截信息发送至 intruder模块进行爆破访问,attack-type选择sniper狙击手模式。 如图操作:

首先添加爆破位置。

其次设置 payloads 值。

准备就绪后不要着急进行 attack。

2、在新标签页中访问test.php。

我们通过 attack不断发送 test.php,也要有相应的措施来访问test.php,因为只有访问test.php,shell.php才会被创建在uoload中。

再次访问test.php,利用Burpsuite进行抓包拦截,发送至 intruder模块爆破,如图:

无限制的访问 test.php。

3、先开始 上传test.php的attack,再进行访问test.php的attack。若访问速度过慢,可以适当提高线程数。

打开upload文件夹,shell.php被成功创建。

在新标签页中访问shell.php,php代码成功执行。

---通关。

相关推荐
晓幂34 分钟前
【2025】HECTF
笔记·学习·web安全
上海云盾-高防顾问35 分钟前
中小企业低成本渗透测试实操指南
网络协议·web安全·网络安全
Bug.ink11 小时前
BUUCTF——WEB(7)
web安全·网络安全·buuctf
安全渗透Hacker13 小时前
参数未校验导致的DOS(服务拒绝)问题典型场景
java·安全·web安全·网络安全·安全性测试
盛世宏博北京13 小时前
《可复制推广:智慧档案馆 “十防” 安全防护体系建设指南》
网络·人工智能·web安全·智慧档案
MOON404☾14 小时前
003.端口扫描
网络·安全·web安全·网络安全·系统安全
Bug.ink16 小时前
BUUCTF——WEB(8)
web安全·网络安全·buuctf
上海云盾-小余16 小时前
im即时通讯被攻击使用游戏盾高防方案有效解决
网络·网络协议·web安全·游戏·金融·ddos
扑火的小飞蛾1 天前
网络安全小白学习路线图 (基于提供文档库)
学习·安全·web安全
计算机程序设计小李同学1 天前
个人数据管理系统
java·vue.js·spring boot·后端·web安全