VIM不正常退出产生的swp文件将泄漏敏感信息

V站笔记

VIM编辑器在非正常退出的情况下会自动生成swp后缀的备份文件,这将会导致程序的源码泄漏,从而被黑客利用,具有一定的安全威胁。

0x00 原理

原理可参考此文章:https://blog.csdn.net/pwiling/article/details/51830781


0x01 简述

当你非正常关闭vim编辑器时(比如直接关闭终端或者电脑断电),会生成一个.swp文件,这个文件是一个临时交换文件,用来备份缓冲区中的内容。

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

意外退出时,并不会覆盖旧的交换文件,而是会重新生成新的交换文件。而原来的文件中并不会有这次的修改,文件内容还是和打开时一样。

例如,第一次产生的交换文件名为“.file.txt.swp”;再次意外退出后,将会产生名为“.file.txt.swo”的交换文件;而第三次产生的交换文件则为“.file.txt.swn”;依此类推。

当vim不正常退出时,比如你编辑的文件config.php,由于vim的不正常退出,此时会在同目录下生成:config.php.swp,由于此类格式文件无法解析,此时便可以通过浏览器直接下载此敏感文件!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏macOS 开发学习

macOS 应用注入开发简介与实践

本文主要介绍的是动态链接库注入的相关实践,这不仅仅局限于macOS,同时对iOS应用也具有相同的效果,希望大家可以借鉴使用.

883
来自专栏Hadoop实操

如何在DELL R730服务器上使用U盘安装linux操作系统

2533
来自专栏CSDN技术头条

从0到1搭建属于自己的服务器

云计算这个概念从提出到现在已经十多年了,在这些年里,云计算取得了飞速的发展与翻天覆地的变化,而云计算也给我们很多开发者带来了福音,比如早期的微信公众号开发,我们...

1316

如何在Linux上搭建Terraria 游戏服务器?

Terraria是一款二维沙盒游戏,类似于Minecraft(我的世界),允许玩家在开放的世界中探索,构建和战斗。2015年,Terraria开发者宣布支持Li...

1013
来自专栏前端黑板报

127.0.0.1 vs 0.0.0.0 vs localhost vs 主机IP

说明:上一篇写完《当你输入URL到页面显示经历了什么--URL到IP地址》之后读了好几本关于网络的书(当然都是跳着读),发现期初想的太简单,还是遗漏了许多,后面...

3429
来自专栏程序员的碎碎念

docker 搭建LAMP开发环境

小编作为一个小白,在搭建lamp这个集成开发环境上卡了有4/5天,遇到了不少坑,有时候令人绝望,有时候又让人兴奋。作为小白,学得不深,在这里把这段时间踩过的坑以...

1264
来自专栏社区的朋友们

如何使用 Python 开发 iOS 程序?

本文介绍了如何用 Python 开发 iOS 程序,其实最主要解决的就是下面三件事情:一是在 iOS App 中安装 Python 解释器,二是搭建 Pytho...

1.5K0
来自专栏pangguoming

Centos下Yum安装PHP5.5,5.6,7.0

默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | grep p...

4533
来自专栏和蔼的张星的图像处理专栏

2. Nsight Eclipse 连接TX2进行CUDA编程

一开始非常纠结在TX2上怎么写CUDA和opencv的程序,总不能在VIM里敲吧,也许是个神器,但现在可能真的没有时间学习,好在发现了Nsight Eclips...

962
来自专栏FreeBuf

利用PRET控制远程打印机测试

Pret是用来对打印机安全进行测试的工具。它通过网络或者USB连接到设备,并利用给定打印机的语言进行渗透。目前绝大多数的打印机都是使用PostScript,pj...

1003

扫码关注云+社区