CTFHub-备份文件下载-vim缓存

tech2024-12-09  8

CTFHub-备份文件下载-vim缓存

前言

vim是个用的很多的文本编辑器,在做题之前从没想到过vim也会产生安全方面的问题。

知识点

1.vim中的swp即swap(交换分区)的简写,在编辑文件时产生,它是隐藏文件。这个文件是一个临时交换文件,用来备份缓冲区中的内容。类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。

如果文件正常退出,则此文件自动删除。

如果并没有对文件进行修改,而只是读取文件,是不会产生swp文件的。

2.在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容

以 index.php 为例:第一次产生的交换文件名为 .index.php.swp

再次意外退出后,将会产生名为 .index.php.swo 的交换文件

第三次产生的交换文件则为 .index.php.swn

3.vim -r 可以查看当前目录下所有的swp文件。 vim -r filename可以恢复文件,这样上次意外退出没有保存的修改,就会覆盖文件。

注意:.swp是隐藏文件,因此最前面有. ,即.index.php.swp,注意index前面的点。

WP

打开环境,在题目的提示下,打开.index.php.swp,讲文件下载下来再打开发现是乱码。这里我遇到了一个坑,我为了省事在windows上下载了vim,在windows上使用

vim -r index.php.swp

结果vim会闪退,换到Linux上的vim就可以了,使用命令之后就可以在vim里看到flag.

官方的第一种解法使用curl,但是我在windows上用curl还是有问题,我怀疑还是系统的问题,就没有换到Linux上去装curl去尝试。

最新回复(0)