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

---通关。

相关推荐
zhu12893035562 小时前
网络安全防护与挑战
网络·安全·web安全
神经毒素4 小时前
WEB安全--文件上传漏洞--36C3 CTF includer bypass
linux·安全·web安全
网络安全指导员7 小时前
如何在JMeter中配置断言,将非200状态码视为测试成功
网络·学习·jmeter·安全·web安全·架构
Sean_summer10 小时前
木马学习记录
web安全
ALe要立志成为web糕手2 天前
SESSION_UPLOAD_PROGRESS 的利用
python·web安全·网络安全·ctf
zhu12893035562 天前
网络安全的现状与防护措施
网络·安全·web安全
zhu12893035562 天前
网络安全与防护策略
网络·安全·web安全
virelin_Y.lin2 天前
系统与网络安全------Windows系统安全(1)
windows·安全·web安全·系统安全
zhu12893035562 天前
网络安全基础与防护策略
网络·安全·web安全