CVE-2018-6789:Exim缓冲区溢出漏洞预警

阅读量    32966 |

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

 

0x00 漏洞背景

2018年2月5日,DEVCORE团队的安全研究员Meh向exim-security邮件组披露了Exim存在一处缓冲区溢出漏洞,编号为CVE-2018-6789,影响 Exim 4.90.1 以下所有版本,并且可能造成远程代码执行。

根据360CERT全网资产检索平台,截止2018年3月7日检索的结果表明全球有超过一百万台服务器上运行着Exim,影响范围广,危害严重。

全球的影响分布图如下:

 

0x01漏洞影响

影响 Exim 4.90.1 以下所有版本

 

0x02 漏洞分析

漏洞发生在/src/base64.c的b64decode函数中:

根据代码可知,exim分配了3*(len/4)+1个字节的空间来存储base64解密后的数据。如果传入的加密数据长度len = 4n+3时,exim分配的空间则为3n+1。但是根据base64加密的原理,4n+3长度的加密数据会解密成3n+2长度的数据。此时就会发生缓冲区溢出,溢出一个字节单位的数据。

Base64解密在传输数据中十分普遍,所以该漏洞容易触发,并且Meh已经公布了远程代码执行攻击的思路,不排除之后出现该漏洞被大量利用的可能。

 

0x03补丁分析

补丁其实是多分配了一个字节的空间来存储解密后的数据,避免了溢出。

 

0x04 修复建议

360 CERT建议相关用户及时下载官方的修复补丁,或者更新到4.90.1版本。

 

0x05 时间线

2018-02-05至2018-02-05 Meh 向exim-security邮件组报告此漏洞

2018-02-06至2018-02-06 漏洞获得CVE编号

2018-02-10至2018-02-10 官方公布相关补丁

2018-03-06至2018-03-06 Meh公布漏洞细节以及攻击思路

2018-03-08至2018-03-08 360CERT发布预警报告

 

0x06 参考链接

1、https://devco.re/blog/2018/03/06/exim-off-by-one-RCE-exploiting-CVE-2018-6789-en/

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多