积极预防 及时发现
快速响应 力保恢复
Exchange Server 回复 EHLO 指令存在缓冲溢出缺陷
发布时间:2002-07-30 信息来源:管理员

Internet Mail Connector (IMC) 是 Microsoft Exchange Server 的一个组件,它是利用 SMTP 协议和其它邮件服务器之间进行交互通讯。 当 IMC 从一个相连的 SMTP 服务器接收到一个 SMTP 扩展Hello(EHLO)协议指令时,就会回复一个以 250- Hello 开头的 status reply 信息。在这里 是 Exchange server 的全资格域名(Fully Qualified Domain Name,FQDN), 是主动要求连接的服务器的全资格域名或 IP 地址。 在这里如果 Exchange5.5 IMC 能够通过一个反向 DNS lookup 反推出域名时将使用全资格域名;如果不行的话,将使用IP地址。 在 Exchange 5.5 的用于回复扩展 Hello (EHLO)指令的 IMC 组件的一个缓冲区缺乏正确的检验,在一定的条件下,允许攻击者进行缓冲溢出攻击。 IMC 通常能正确地处理上传的 EHLO 指令,但是用来构建 Hello 回复信息的代码含有一个未经检验的缓冲区。攻击者可以通过一个非常复杂的过程构建一段畸形代码回复 Hello 指令,导致 IMC 产生一段数据,覆盖它自己的缓冲区。据发现这一安全漏洞的美国Internet Security Systems的信息称,与域名中能够使用的字符多达255个相比,IMC所准备的缓冲器实在是太小了,因此“正规”的域名也会引起缓冲器溢出。 正像大部分的缓冲溢出,如果攻击者是使用任意数据覆盖缓冲区,只会导致服务的崩溃;如果是使用精心构建的数据去覆盖缓冲区,就会执行攻击者选择的任意指令。而且因为 IMC 通常是以系统权限来运行的,所以攻击者往往可以获得系统的完全控制权限。 但是要想成功利用此缺陷的话,要求攻击者不仅能够建立和目标邮件服务器的连接,而且必须能够创造一定的条件,使成为攻击对象的Exchange Server必须要在所参考的DNS服务器上放置非法信息(或者参考非法的DNS服务器),但是后者将是非常的困难。 Windows 2000 自带的 SMTP 服务不受此漏洞影响,因为默认状态下并不会安装IMC,未安装IMC时,则不会受到安全漏洞的影响。 攻击方法: 暂无有效攻击代码 解决方案: * 下载补丁: Microsoft Exchange 5.5 Service Pack 4: http://www.microsoft.com/Downloads/Release.asp?ReleaseID=40666 * Exchange 2000 不受此漏洞影响,用户可使用Exchange 2000 * 客户可以通过设置一个注册表键,将反向DNS lookup禁止,即不再将SMTP报头\"Received From\"字段中的主机名解析为全资格域名(FQDN) ,使即使能够反推出对方IP地址时也显示IP地址的话,也能避免受到损害。 附加信息: CAN-2002-0698