upload-labs关卡11(双写后缀名绕过)通关思路

文章目录


前言

此文章只用于学习和反思巩固文件上传漏洞知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试!!!


一、回顾前几关知识点

前几关源代码是验证去除末尾点、首尾去空、大小写过滤以及data流过滤。都是基于window特性绕过的。这一关的源代码就不太一样了,让我们瞧一瞧。

二、靶场第十一关通关思路

  • 1、看源代码
  • 2、bp抓包双写后缀名绕过
  • 3、检查文件是否成功上传

1、看源代码

php 复制代码
$is_upload = false;
$msg = null;
if (isset($_POST['submit'])) {
    if (file_exists(UPLOAD_PATH)) {
        $deny_ext = array("php","php5","php4","php3","php2","html","htm","phtml","pht","jsp","jspa","jspx","jsw","jsv","jspf","jtml","asp","aspx","asa","asax","ascx","ashx","asmx","cer","swf","htaccess","ini");

        $file_name = trim($_FILES['upload_file']['name']);
        $file_name = str_ireplace($deny_ext,"", $file_name);
        $temp_file = $_FILES['upload_file']['tmp_name'];
        $img_path = UPLOAD_PATH.'/'.$file_name;        
        if (move_uploaded_file($temp_file, $img_path)) {
            $is_upload = true;
        } else {
            $msg = '上传出错!';
        }
    } else {
        $msg = UPLOAD_PATH . '文件夹不存在,请手工创建!';
    }
}

发现源代码大改,和之前不一样了。发现这串核心代码$file_name = str_ireplace($deny_ext,"", $file_name);意思是如果上传的文件后缀名在黑名单中,就会把此后缀名替换为空。但是这个代码只执行一次,那么我双写后缀名是不是就可以绕过了呢。

2、bp抓包双写后缀名绕过

因为php在黑名单里,应该会被替换为空。我们先上传123.php,看看是不是我们所说的把php后缀名替换为空。(如图所示)

发现是被替换了,那么我们就有思路了。如果后缀名是pphphp是不是就会把中间的php替换为空,最终变成php后缀名了呢?我们试一试(如图所示)

3、检查文件是否成功上传

发现上传成功

如果上传的是一句话木马就可以连接菜刀了。

总结

这一关利用的是由于验证代码中只验证了一次,造成我们可以双写进行绕过,就和之前点空格绕过一样,因为只验证一次,我们可以多写来绕过。此文章是小白自己为了巩固文件上传漏洞而写的,大佬路过请多指教!

相关推荐
sszdlbw2 小时前
BUUCTF-web刷题篇(6)
web安全·web·buuctf
zhu12893035566 小时前
网络安全的重要性与防护措施
网络·安全·web安全
渗透测试老鸟-九青6 小时前
面试经验分享 | 成都渗透测试工程师二面面经分享
服务器·经验分享·安全·web安全·面试·职场和发展·区块链
virelin_Y.lin7 小时前
系统与网络安全------Windows系统安全(7)
windows·web安全·系统安全·ftp
写代码的小王吧7 小时前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
独行soc11 小时前
2025年渗透测试面试题总结-某腾某讯-技术安全实习生升级(题目+回答)
java·python·安全·web安全·面试·职场和发展·红蓝攻防
神经毒素12 小时前
WEB安全--文件上传漏洞--其他绕过方式
安全·web安全·文件上传漏洞
予安灵12 小时前
XSS 攻击(详细)
前端·web安全·网络安全·网络攻击模型·xss·安全架构·xss攻击
it技术分享just_free14 小时前
软考教材重点内容 信息安全工程师 第21章 网络设备安全
web安全·网络安全·信息安全·系统安全·软考