文件上传漏洞--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代码成功执行。

---通关。

相关推荐
嗨丶王哪跑10 小时前
网络安全主动防御技术与应用
运维·网络·安全·web安全
火白学安全14 小时前
《Python红队攻防脚本零基础编写:入门篇(一)》
python·安全·web安全·网络安全·系统安全
好家伙VCC14 小时前
**发散创新:渗透测试方法的深度探索与实践**随着网络安全形势日益严峻,渗透测试作为评估系统安全的
java·python·安全·web安全·系统安全
人邮异步社区15 小时前
内网攻防实战图谱:从红队视角构建安全对抗体系
网络·安全·web安全
携欢1 天前
PortSwigger靶场之CSRF where token validation depends on request method通关秘籍
安全·web安全·csrf
周杰伦_Jay1 天前
【计算机网络表格图表解析】网络体系结构、数据链路层、网络层、传输层、应用层、网络安全、故障排查
计算机网络·安全·web安全
独行soc1 天前
2025年渗透测试面试题总结-106(题目+回答)
网络·python·安全·web安全·adb·渗透测试·安全狮
A Runner for leave1 天前
网络与通信安全课程复习汇总1——课程导入
网络·安全·web安全
KKKlucifer1 天前
生成式 AI 冲击下,网络安全如何破局?
网络·人工智能·web安全
Suckerbin1 天前
Monitoring: 1靶场渗透
笔记·安全·web安全·网络安全