天天看点

漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用

一、事件背景

2019年6月4日,爆出来关于VIM的漏洞,攻击者可以通过向受害者发送一个恶意代码,如果用户使用VIM打开该代码,那么攻击者可以控制用户的计算机。

二、影响版本

Vim < 8.1.1365

Neovim < 0.3.6

三、前提条件

(1):vim版本小于8.1.1365
漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
(2):开启modeline,部分 Linux 发行版默认启用了该功能
  • 修改vimrc文件
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
  • 并在里面写入一句话
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用

四、漏洞危害

中危

五、vim编辑器任意代码执行漏洞复现

1.实验环境

靶机:kali(192.168.223.179)

攻击者:kali(192.168.223.160)

2.下载POC

https://github.com/pcy190/ace-vim-neovim/

漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
3.执行进行uname查询的POC
  • 查看POC
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
  • 执行POC
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
    可以看见,打开poc_unmae.txt时成功执行了uname -a这条命令
4.执行反弹shell的POC
  • 查看POC
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
  • 在攻击者主机上进行监听
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
  • 在靶机上执行poc_shell.txt
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用
  • 攻击者已经拿到shell
    漏洞复现----CVE-2019-12735 vim编辑器任意代码执行漏洞复现及利用

六、防御vim编辑器远程代码执行漏洞的方法

1.为vim编辑器打补丁

2.禁用编辑器的modeline功能,把set modeline改为set nomodeline

3.利用vim编辑的时候,查看文件来源是否正规,不打开来路不明的文件

继续阅读