首页 > 系统服务 > 详细

重现Vim任意代码执行漏洞(CVE-2019-12735) 20181308

时间:2021-04-29 22:11:03      阅读:11      评论:0      收藏:0      [点我收藏+]

Vim任意代码执行漏洞(CVE-2019-12735)

前言

Vim通过Modelines执行任意代码
漏洞概要: 在8.1.1365之前的Vim和在0.3.6之前的Neovim很容易通过打开特制的文本文件而通过模型执行任意代码。

复现条件: 确保未禁用modeline选项(:set modeline)。

影响版本

技术分享图片

Vim < 8.1.1365

Neovim < 0.3.6

测试环境

技术分享图片

漏洞复现

首先下载复现所需文件

然后确保未禁用modeline选项。

开启modeline

vim /usr/share/vim/vimrc

大概在五十五行左右,写入 set modeline

技术分享图片

准备就绪后开始复现过程

首先打开我们的poc_uname.txt

技术分享图片

可以看到在使用vim打开的时候,是先执行了uname -a的这个命令。

然后我们进阶创建反弹shell。

首先启动本地9999的监听端口。

技术分享图片

然后打开我们的poc_shell.txt

技术分享图片

这时我们可以发现反弹成功,建立了shell连接。

技术分享图片

修复建议

一:打补丁
Vim补丁8.1.1365
https://github.com/vim/vim/commit/5357552
Neovim补丁(在v0.3.6中发布)
https://github.com/neovim/neovim/pull/10082
https://github.com/neovim/neovim/releases/tag/v0.3.6

二:在vimrc(set nomodeline)中禁用model,使用securemodelines 插件。

参考博客:

1.https://blog.csdn.net/xuandao_ahfengren/article/details/106957146

2.https://www.jianshu.com/p/2d7201e9e94a

重现Vim任意代码执行漏洞(CVE-2019-12735) 20181308

原文:https://www.cnblogs.com/King-King/p/14719425.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!