文件上传漏洞--Upload-labs--Pass10--双写绕过

一、什么是双写绕过

顾名思义,双写绕过就是双写文件后缀名来进行绕过,如:test.php 双写后为 test.pphphp。通常情况下双写绕过用于绕过源代码中的 str_ireplace()函数。


二、双写绕过原理

1、首先进行代码审计,源代码中有黑名单和str_ireplace()函数的联合使用,将黑名单中的敏感后缀名全部都进行了删除。

这就会使我们上传的 test.php 上传后变成 test. ,这就会使Apache无法解析,以至于不会执行文件中的php代码,如图:

但是,str_ireplace() 函数也有缺陷,那就是只会进行一次删除操作,我们这时就可以使用双写进行绕过。test.pphphp 被删除一次php后依然还剩 test.php,这样就可以成功执行php代码。


三、通关操作

1、首先上传test.php文件,利用 Burpsuite 进行抓包,将filename中的 test.php后缀双写。

2、发包,文件上传成功,新标签页中打开,代码成功执行。

---通关。

相关推荐
蒲公英eric12 小时前
从旧接口泄露到 OAuth 保护:DVWA API 模块完整漏洞分析教程
web安全·ai·ctf·dvwa·ai安全·api模块
云水一下1 天前
零基础玩转bWAPP靶场(六十七):Cross-Domain Policy File (Flash)
web安全·flash·bwapp
白猫不黑1 天前
CTF是什么?从零理解一场攻防竞赛
网络·web安全·计算机·网络安全·信息安全·ctf·红蓝对抗
一只鹿鹿鹿2 天前
信息系统网络安全检查表(Word)
大数据·安全·web安全·系统安全·制造
sbjdhjd2 天前
从“删除后重生”到认证绕过:PHP 常驻内存实验与 Cacti remote_agent 命令执行链路复盘
安全·web安全·网络安全·数据挖掘·php·网络攻击模型·安全架构
ccino .2 天前
Docker 容器删除卡在 Removal In Progress / Dead 解决
服务器·安全·web安全·网络安全
三8444 天前
云安全 · 02 · 容器与 Docker 安全基础
web安全·docker·云安全
宁之明起(B服)4 天前
struct2(vulhub靶场)指纹识别+沙箱绕过+反弹shell+webshell
web安全
三8444 天前
Java 模板注入(FreeMarker)· 04 · 利用与绕过:payload 全集
java·web安全·freemarker·payload