Uploadlabs 6-10

pass6

所有后缀都被列入黑名单
较之前发现没有trim函数,也就是没有对空格进行过滤
在这里插入图片描述
使用burp抓包进行名称的修改,更改为webshell.php .在这里插入图片描述
发送到repeater,点击go,得到文件名称在这里插入图片描述

pass7

所有后缀都被列入黑名单,但没有 $file_name = deldot($file_name);//删除文件名末尾的点
在这里插入图片描述
使用burp抓包,文件名更改为webshell.php.
即可绕过

pass8

对比之前发现没有 $file_ext = str_ireplace('::$DATA', '', $file_ext);//去除字符串::$DATA
使用burp抓包进行修改,在文件名后添加::$DATA

:: D A T A : N T F S 文 件 系 统 包 括 对 备 用 数 据 流 的 支 持 。 主 要 包 括 提 供 与 M a c i n t o s h 文 件 系 统 中 的 文 件 的 兼 容 性 。 备 用 数 据 流 允 许 文 件 包 含 多 个 数 据 流 。 每 个 文 件 至 少 有 一 个 数 据 流 。 在 W i n d o w s 中 , 此 默 认 数 据 流 称 为 : DATA: NTFS文件系统包括对备用数据流的支持。主要包括提供与Macintosh文件系统中的文件的兼容性。备用数据流允许文件包含多个数据流。每个文件至少有一个数据流。在Windows中,此默认数据流称为: DATA:NTFSMacintoshWindows
DATA。
简单讲就是在php+windows的情况下:如果文件名+":: D A T A " 会 把 : : DATA"会把:: DATA"::DATA之后的数据当成文件流处理,不会检测后缀名.且保持"::$DATA"之前的文件名。

在这里插入图片描述
复制地址在这里插入图片描述
之后在地址栏中删掉::data就好

pass9

与之前相比,少了

 $temp_file = $_FILES['upload_file']['tmp_name'];
  $img_path = UPLOAD_PATH.'/'.date("YmdHis").rand(1000,9999).$file_ext; 

在这里插入图片描述

$file_name = trim($_FILES['upload_file']['name']);
        $file_name = deldot($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); //首尾去空

从源码中可以分析对文件名首先删除文件末尾的点,此时还有php. (点+空格),在进行首尾去空格php. .,然后就剩下了php.,此时就相当于第七关

所以img_path的路径直接由file_name构成
使用burp抓包修改文件名为webshell.php. .(点+空格+点)

在这里我们就可以发现3-9关都可以使用点+空格+点绕过

pass10

$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");

        $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 . '文件夹不存在,请手工创建!';
    }
}

源码中缺少::$DATA、转换为小写、删除末尾点、空格的函数,这里的意思是将文件名里面那些黑名单后缀转换为空格,str_ireplace不区分大小写,所以大小写绕过不行,尝试双写后缀名,比如pphphp,将php转换为空格后还存在另一个php

将webshell.php命名为webshell.pphphp
使用burp可以查看路径

uploadlabs19是什么内容?是一个网站还是一个软件?由谁开发?是否有相关使用教程和资源下载?具体功能和特点是什么? 如果是一个网站,那么uploadlabs19可能是一个在线平台,用户可以在上面上传和分享文件。该网站可能提供账户注册功能,用户可以创建自己的账户并进行文件管理。同时,可能还有文件分类和搜索功能,方便用户查找和下载其他用户共享的文件。 如果uploadlabs19是一个软件,那么它可能是由某个开发者或团队开发的。该软件可能具有文件上传和管理功能,用户可以将文件上传到软件中并进行相应的文件管理操作。软件可能支持多种文件格式,同时具备文件加密和解密功能,以保护用户的文件安全。软件可能还提供了批量上传和下载的功能,方便用户进行大规模的文件操作。另外,uploadlabs19可能还拥有自动同步功能,可以将用户上传的文件实时同步到云端存储空间,以保障用户数据的安全和备份。 无论是网站还是软件,如果uploadlabs19有一定的规模和用户量,那么可能还会有相关的使用教程和资源下载。教程可能包括使用说明、功能介绍、常见问题解答等,帮助用户更好地使用该平台或软件。而资源下载可能包括软件的安装包、更新版本、插件等,方便用户进行升级和拓展。这些教程和资源可能可以在uploadlabs19的官方网站或相关平台上获得。 综上所述,uploadlabs19可能是一个文件上传和管理平台,提供用户上传、分享和下载文件的功能;也可能是一个软件,具备上传、管理、加密等功能。无论以哪种形式存在,如果有一定的发展和规模,就可能提供相关的教程和资源下载,以帮助用户更好地使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值