[LitCTF 2023]Vim yyds

[LitCTF 2023]Vim yyds

点开后页面内容如图:

在这里插入图片描述

接着我们搜索一下vim相关的知识:
vim -r filename 恢复上次 vim 打开时崩溃的文件
vim -R filename 把指定的文件以只读方式放入 Vim 编辑器中
vi +/pattern filename 打幵文件,并将光标置于第一个与 pattern 匹配的位置

由于题目中描述的有源码泄露,我们打开kali linux 用dirsearch 扫描一下目录:

命令如下:

dirsearch -u "http://node4.anna.nssctf.cn:28588/"

在这里插入图片描述

我们发现有一个 .index.php.swp 的文件,这里对.swp文件做一下简要介绍:
.swp 文件是一种由许多文本编辑器和开发工具生成的临时交换文件。
其主要用途是在编辑过程中作为一种备份和恢复机制。例如,当您正在使用某个文本编辑器编辑一个文件时,如果突然出现系统故障、软件崩溃或者意外断电等情况,编辑器可以利用 .swp 文件来恢复您未保存的工作进度。

然后我们下载该文件,然后将该文件拖入到kali linux 的桌面上,然后我们在kali linux 的空白处点击右键,选择在桌面打开终端,然后我们执行如下命令,用于恢复文件,得到index.php文件的源码。

vim -r index.php.swp

在这里插入图片描述按enter键后:

在这里插入图片描述接着我们对php代码进行分析,从if语句中我们知道,当传入的password参数的值等于"Give_Me_Your_Flag"base64加密后的值时,可以通过cmd参数进行命令执行。我们用base64在线编码工具对Give_Me_Your_Flag进行在线编码得到:R2l2ZV9NZV9Zb3VyX0ZsYWc=

在这里插入图片描述

我们接着打开HackBar 加载URL并尝试使用POST传参传递参数进行命令执行。

在这里插入图片描述
接着我们执行以下命令,找到了flag:

password=R2l2ZV9NZV9Zb3VyX0ZsYWc=&cmd=ls /

在这里插入图片描述
接着我们执行以下命令查看flag:

password=R2l2ZV9NZV9Zb3VyX0ZsYWc=&cmd=cat /flag

在这里插入图片描述

由此可得本题flag为:NSSCTF{766a68b2-b70c-4524-8eb3-da6b7ad1ae9a}

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值