HacKerQWQ的博客空间

VIM编辑器异常退出导致的源码泄露

Word count: 270Reading time: 1 min
2020/08/05 Share

前言:vim不正常退出会导致残留隐藏文件,会造成源码泄露

vim交换文件名

在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容
以 index.php 为例:第一次产生的交换文件名为 .index.php.swp
再次意外退出后,将会产生名为 .index.php.swo 的交换文件
第三次产生的交换文件则为 .index.php.swn

利用思路

  1. 思路一
    利用curl访问即可直接看到flag,因为vim使用的缓存存储为一种固定格式的二进制文件。而我们一般编辑的时明问可见字符,在vim的缓存中这些可见字符会原样保留

  2. 思路二
    下载下来之后用vim -r参数恢复文件

    1
    2
    wget http://challenge-5e11a4163c058a15.sandbox.ctfhub.com:10080/.index.php.swp
    vim -r index.php


    wget下载了之后就可以用vim -r恢复

最后得到flag啦~~

CATALOG
  1. 1. vim交换文件名
  2. 2. 利用思路