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

攻防世界-filemanager

🍬 博主介绍
👨‍🎓 博主介绍:大家好,我是 JTZ_ ,很高兴认识大家~
✨主攻领域:【WEB 安全】
✨兼攻领域:【逆向分析】【SSM 网页制作】【应用程序编写】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!


文章目录


  1. 打开初始网页后,经过简单的对网站功能进行分析后我们可以得出几点结论

    1. 很大可能是将一个木马文件上传上去,然后在利用改名字功能将原先上传的木马文件修改为 php 结尾的文件
  2. 经过简单的测试,我们可以知道对于重写名称的思路应该是这样
    在这里插入图片描述

  3. 现在我们已经获得了我们目前已知的一切,接下来没法走了,那就扫目录吧,最终可以获得一个 www.tar.gz 文件,这一看就是源码了,我们下载下来后对其进行分析

<?php
/**
 * Created by PhpStorm.
 * User: phithon
 * Date: 15/10/14
 * Time: 下午9:39
 */
 
require_once "common.inc.php";
 
if (isset($req['oldname']) && isset($req['newname'])) {
	$result = $db->query("select * from `file` where `filename`='{$req['oldname']}'");
	if ($result->num_rows > 0) {
		$result = $result->fetch_assoc();
	} else {
		exit("old file doesn't exists!");
	}
 
	if ($result) {
 
		$req['newname'] = basename($req['newname']);
		$re = $db->query("update `file` set `filename`='{$req['newname']}', `oldname`='{$result['filename']}' where `fid`={$result['fid']}");
		if (!$re) {
			print_r($db->error);
			exit;
		}
		$oldname = UPLOAD_DIR . $result["filename"] . $result["extension"];
		$newname = UPLOAD_DIR . $req["newname"] . $result["extension"];
		if (file_exists($oldname)) {
			rename($oldname, $newname);
		}
		$url = "/" . $newname;
		echo "Your file is rename, url:
                <a href=\"{$url}\" target='_blank'>{$url}</a><br/>
                <a href=\"/\">go back</a>";
	}
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>file manage</title>
    <base href="/">
    <meta charset="utf-8" />
</head>
<h3>Rename</h3>
<body>
<form method="post">
    <p>
        <span>old filename(exclude extension)</span>
        <input type="text" name="oldname">
    </p>
    <p>
        <span>new filename(exclude extension)</span>
        <input type="text" name="newname">
    </p>
    <p>
        <input type="submit" value="rename">
    </p>
</form>
</body>
</html>
  1. 对上面代码进行分析后,我们可以得出下面的结论:
    在这里插入图片描述

  2. 经过分析,我们可以先上传一个文件名称为 ’,extension='.jpg 的文件,这个文件中的内容无所谓
    在这里插入图片描述

  3. 上传成功后,我们将原来的文件名称修改为 conn.jpg
    在这里插入图片描述
    在这里插入图片描述

  4. 然后我们上传一个一句话木马文件,文件名为 conn.jpg 一定要和上一步改的文件名相同
    在这里插入图片描述

  5. 上传完成后,对名字进行修改
    在这里插入图片描述
    在这里插入图片描述

  6. 使用蚁剑连接
    在这里插入图片描述

  7. 过关思路:

    在这里插入图片描述

相关文章:

  • 软件项目管理简答题
  • Spring源码分析(二):底层架构核心概念解析
  • vue3 watch的各种使用情景
  • Dubbo(二)
  • Qt6.3.2下QChart的使用
  • GAM注意力机制
  • ts流中的时间概念: pcr,pts,dts 实例解说
  • 申请ISO50430建筑体系认证有哪些注意问题?
  • MyEclipse技术深度剖析——企业级的Java EE Jakarta EE IDE
  • 一分钟学会Selenium
  • 【网络安全】逻辑漏洞保姆级讲解
  • 聚焦能源与双碳管理需求,格创东智为锂电企业降耗赋能
  • 2022年最新最详细的MYSQL数据库安装(详细图解过程、毕成功)
  • VUE路由案例(商品列表)---vue练习必选项目(附原码)
  • 过采样、欠采样
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • 【React系列】如何构建React应用程序
  • CEF与代理
  • create-react-app做的留言板
  • ES6简单总结(搭配简单的讲解和小案例)
  • Facebook AccountKit 接入的坑点
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • JS+CSS实现数字滚动
  • k8s 面向应用开发者的基础命令
  • Mysql优化
  • node.js
  • python学习笔记 - ThreadLocal
  • spring security oauth2 password授权模式
  • Spring核心 Bean的高级装配
  • 初识MongoDB分片
  • 力扣(LeetCode)965
  • 强力优化Rancher k8s中国区的使用体验
  • 如何优雅地使用 Sublime Text
  • 使用 @font-face
  • 探索 JS 中的模块化
  • 学习JavaScript数据结构与算法 — 树
  • MyCAT水平分库
  • #1014 : Trie树
  • (1)(1.9) MSP (version 4.2)
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (十三)Maven插件解析运行机制
  • (四) Graphivz 颜色选择
  • (算法)Travel Information Center
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • ./configure,make,make install的作用
  • .netcore如何运行环境安装到Linux服务器
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .net生成的类,跨工程调用显示注释
  • .pyc文件是什么?
  • @德人合科技——天锐绿盾 | 图纸加密软件有哪些功能呢?
  • [ 常用工具篇 ] POC-bomber 漏洞检测工具安装及使用详解