8- 点绕过

8- 点绕过

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",".pHp",".pHp5",".pHp4",".pHp3",".pHp2",".Html",".Htm",".pHtml",".jsp",".jspa",".jspx",".jsw",".jsv",".jspf",".jtml",".jSp",".jSpx",".jSpa",".jSw",".jSv",".jSpf",".jHtml",".asp",".aspx",".asa",".asax",".ascx",".ashx",".asmx",".cer",".aSp",".aSpx",".aSa",".aSax",".aScx",".aShx",".aSmx",".cEr",".sWf",".swf",".htaccess",".ini");
        $file_name = trim($_FILES['upload_file']['name']);
        $file_ext = strrchr($file_name, '.');
        $file_ext = strtolower($file_ext); //转换为小写
        $file_ext = str_ireplace('::$DATA', '', $file_ext);//去除字符串::$DATA
        $file_ext = trim($file_ext); //首尾去空
        
        if (!in_array($file_ext, $deny_ext)) {
            $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 = '此文件类型不允许上传!';
        }
    } else {
        $msg = UPLOAD_PATH . '文件夹不存在,请手工创建!';
    }
}

跟第七关类似,第八关去除空格不去除点,所以上传到windows上,变成了shell.php. windows自动删除没用的点 变成了 shell.php

相关推荐
深邃-5 小时前
【Web安全】-SRC平台介绍:CNVD平台-事件型漏洞-通用型漏洞,教育SRC平台,漏洞盒子,补天漏洞平台,企业SRC平台,企业和公益SRC平台
网络协议·安全·web安全·网络安全·https·src·cnvd
HackTwoHub5 小时前
AI 挖洞新思路、深度解析两大间接提示词注入漏洞攻防思路,注入也能获得上万美金
人工智能·安全·web安全·网络安全·系统安全·安全架构
KivenMitnick19 小时前
LovelyERes:AWD适用的蓝队综合工具
运维·安全·网络安全
其实防守也摸鱼1 天前
ctfshow--Crypto(funnyrsa1-密码2)解题步骤
python·安全·web安全·网络安全·密码学·web·工具
汤愈韬1 天前
hcip-security_防火墙高可靠技术3_防火墙链路高可靠技术
网络·网络协议·网络安全
X7x51 天前
网络入侵检测系统(NIDS):企业网络安全的守望者
网络安全·网络攻击模型·安全威胁分析·安全架构·nids
君如风军如风1 天前
等保2.0安全通用要求第二级别之安全管理制度
网络安全·等级保护·等保2.0·安全合规·gb/t 22239
姬成韶1 天前
[BUUCTF 2018]Online Tool题目解析
web安全·网络安全·代码审计
君如风军如风1 天前
等保2.0安全通用要求第二级别之安全运维管理
网络安全·等级保护·等保2.0·安全合规·gb/t 22239