首页 -> 安全研究

安全研究

绿盟月刊
绿盟安全月刊->第55期->最新漏洞
期刊号: 类型: 关键词:
Samba smbd安全描述符远程整数溢出漏洞

日期:2005-01-06

发布日期:2004-12-16
更新日期:2004-12-17

受影响系统:
Samba Samba 3.0.9
Samba Samba 3.0.8
Samba Samba 3.0.7
Samba Samba 3.0.6
Samba Samba 3.0.5
Samba Samba 3.0.4
Samba Samba 3.0.3
Samba Samba 3.0.2a
Samba Samba 3.0.2
Samba Samba 3.0.1
Samba Samba 3.0 alpha
Samba Samba 3.0
Samba Samba 2.2.8a
Samba Samba 2.2.8
Samba Samba 2.2.7a
Samba Samba 2.2.7
Samba Samba 2.2.6
Samba Samba 2.2.5
Samba Samba 2.2.4
Samba Samba 2.2.3
Samba Samba 2.2.2
Samba Samba 2.2.12
Samba Samba 2.2.11
Samba Samba 2.2.0a
Samba Samba 2.2.0
Samba Samba 2.0.9
Samba Samba 2.0.8
Samba Samba 2.0.7
Samba Samba 2.0.6
Samba Samba 2.0.5
Samba Samba 2.0.4
Samba Samba 2.0.3
Samba Samba 2.0.2
Samba Samba 2.0.10
Samba Samba 2.0.1
Samba Samba 2.0.0
描述:
--------------------------------------------------------------------------------
CVE(CAN) ID: CAN-2004-1154

Samba是一套实现SMB(Server Messages Block)协议,跨平台进行文件共享和打印共享服务的程序。

smbd守护进程在处理安全描述符时存在安全问题,远程攻击者可以利用这个漏洞进行整数溢出,可能以进程权限在系统上执行任意指令。

在samba服务器上打开一个文件,客户端需要发送一系列SMB消息到smbd进程,这些消息包含打开文件的各种信息,包括安全描述符,这些描述符是应用到文件的访问控制列表信息。当分配存储这些描述符时存在一个整数溢出问题:

   /*
   * Even if the num_aces is zero, allocate memory as there's a difference
   * between a non-present DACL (allow all access) and a DACL with no ACE's
   * (allow no access).
   */
   if((psa->ace = (SEC_ACE *)prs_alloc_mem(ps,sizeof(psa->ace[0]) * (psa->num_aces+1))) == NULL)
          return False;

当超过请求38347922描述符时,会由于分配过小的内存而导致一个整数溢出。攻击者可以精心构建安全描述符数据,导致破坏堆结构到可能以进程权限执行任意指令。

要成功利用此漏洞,必须有访问文件的权限。

<*来源:Greg MacManus
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110322316903697&w=2
        http://marc.theaimsgroup.com/?l=bugtraq&m=110321382627369&w=2
*>

建议:
--------------------------------------------------------------------------------
厂商补丁:

Samba
-----
Samba 3.0.9系统的补丁可从如下地址下载:

http://www.samba.org/samba/ftp/patches/security/

版权所有,未经许可,不得转载