7.攻防世界 wzsc_文件上传
打开题目页面如下
上传了一张带有木马的图片
返回的页面是空白的,不过路径变了
猜测存在根目录/upload
也可以通过dirsearch扫描根目录
命令:
dirsearch -u http://61.147.171.105:65024/ -e*
终于得到了上传的文件的信息
但是测试发现.php文件以及..user.ini这种文件都没有传上去
文件后缀有限制,使用竞争绕过
竞争绕过
概念
竞争绕过通常指的是利用系统中并发操作时的竞争条件来绕过某些安全机制或限制。在多线程、多进程或者分布式系统中,多个操作可能会同时访问和修改共享资源,如果没有正确的同步机制,就可能出现竞争条件,可以利用这种情况绕过身份验证、授权检查等安全控制。
常见场景及绕过方式
身份验证绕过
在一些 Web 应用中,用户登录时系统会先检查用户输入的用户名和密码,然后再进行权限验证。如果这两个步骤之间存在时间差,并且没有合适的同步机制,可以利用竞争条件绕过密码验证。
绕过方式:可以在短时间内发送大量的登录请求,利用系统处理这些请求的时间差,在身份验证还未完成时就尝试访问受保护的资源。
访问控制绕过
在文件系统或者数据库中,可能存在对文件或数据的访问控制。例如,一个文件只有在用户具有特定权限时才能被访问,系统会在访问前进行权限检查。
绕过方式:可以在权限检查和实际访问文件的操作之间,通过并发操作修改文件的权限或者自己的权限,从而绕过访问控制。
看大佬的wp【攻防世界】wzsc_文件上传 - Mr_Soap - 博客园
说可以将两个payload都选择为null,上传的报文无限发送,再访问的报文发送1000遍
用burp suite抓包
看到其实上传成功了,但估计是在短时间内浏览器删除了
这里需要利用burpsuite重复发包
- 配置 Intruder 攻击
- 切换到 “Intruder” 选项卡,这里有四个子选项卡:“Positions”(位置)、“Payloads”(载荷)、“Settings”(设置)和 “Results”(结果)。
- 在 “Positions” 选项卡中,设置要进行攻击或重复的位置。可以通过点击 “Clear §” 清除默认的标记,然后手动选择要修改或重复的部分,点击 “Add §” 添加标记。
- 在 “Payloads” 选项卡中,配置要发送的载荷。选择 “Null payloads”(空载荷),表示不改变请求内容,只是重复发送。
- 在 “Settings” 选项卡中,可以设置请求的相关参数,如线程数、延迟时间等。线程数决定了同时发送请求的数量,延迟时间可以设置每个请求之间的间隔。配置完成后,点击 “Start attack” 按钮,Burp Suite 会按照配置的参数重复发送请求,并在 “Results” 选项卡中显示每个请求的响应结果。
最后用蚁剑连接,在根目录下找到flag