如何分析CVE-2018-6789Exim缓冲区溢出漏洞

技术如何进行CVE-2018-6789Exim缓冲区溢出漏洞分析本篇文章为大家展示了如何进行CVE-2018-6789Exim缓冲区溢出漏洞分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你

本文向您展示了如何分析CVE-2018-6789Exim缓冲区溢出漏洞。内容简洁易懂,一定会让你大放异彩。希望通过这篇文章的详细介绍,你能有所收获。

0x00 漏洞背景

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

据360CERT全网资产检索平台显示,截至2018年3月7日,检索结果显示全球运行Exim的服务器超过百万台,影响范围广,危害严重。

全球影响分布图如下:

如何进行CVE-2018-6789Exim缓冲区溢出漏洞分析

0x01漏洞影响

影响 Exim 4.90.1 以下所有版本

0x02 漏洞分析

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

如何进行CVE-2018-6789Exim缓冲区溢出漏洞分析

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

Base64解密在数据传输中非常常见,所以这个漏洞很容易被触发,而且Meh已经宣布了远程代码执行攻击的想法,不排除这个漏洞在未来被广泛利用的可能性。

0x03补丁分析

如何进行CVE-2018-6789Exim缓冲区溢出漏洞分析

事实上,补丁会额外分配一个字节的空间来存储解密的数据,从而避免溢出。

00-1010

0x04 修复建议

以上内容是如何分析CVE-2018-6789Exim缓冲区溢出漏洞的。你学到什么知识或技能了吗?如果你想学习更多的技能或丰富你的知识,请关注行业信息渠道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/153815.html

(0)

相关推荐

  • C语言中提高代码执行效率的小技巧有哪些

    技术C语言中提高代码执行效率的小技巧有哪些本篇内容主要讲解“C语言中提高代码执行效率的小技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言中提高代码执行效率的小技

    攻略 2021年11月9日
  • C++11列表初始化是怎样的

    技术C++11列表初始化是怎样的这篇文章主要介绍“C++11列表初始化是怎样的”,在日常操作中,相信很多人在C++11列表初始化是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++

    攻略 2021年11月25日
  • c++和Python哪个好(g++工程师工资)

    技术Idea SpringMVC+Spring+MyBatis+Maven怎么使用本篇内容介绍了“Idea SpringMVC+Spring+MyBatis+Maven怎么使用”的有关知识,在实际案例的操作过程中,不少人

    攻略 2021年12月14日
  • c++中如何使用两个栈实现一个队列

    技术c++中如何使用两个栈实现一个队列c++中如何使用两个栈实现一个队列,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、栈栈:只允许在固定

    攻略 2021年11月24日
  • 华为手机什么型号好,现在买华为的哪个手机好

    技术华为手机什么型号好,现在买华为的哪个手机好别买HUAWEI容易撞机 会议全是华为 如果你硬要买的话 我推荐 华为p10华为p10屏幕尺寸5.1刚刚适合 用习惯i

    生活 2021年10月28日
  • redis令牌桶算法过期时间(redis实现令牌桶算法)

    技术利用Redis如何实现令牌桶算法小编给大家分享一下利用Redis如何实现令牌桶算法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在限流算法

    攻略 2021年12月21日