安全公告编号:CNTA-2017-0042
近期,国家信息安全漏洞共享平台(CNVD)收录了Samba存在远程代码执行漏洞(CNVD-2017-07432,对应CVE-2017-7494)。综合利用该漏洞,远程攻击者可以利用客户端将指定库文件上传到具有可写权限的共享目录,使服务器加载并执行指定的库文件,可执行任意代码。相关利用代码已公开,影响范围很大。
一、漏洞情况分析
Samba是运行于Linux和UNIX系统上实现SMB协议的软件,实现不同计算机之间提供文件及打印机等资源的共享服务。Samba现在已经实现Unix和Linux机器与各种Windows网络功能(包括Active Directory和Windows Server Domain)进行互操作的方法。
Samba从3.5.0版本开始的几乎所有版本均存在远程代码执行漏洞,且该漏洞已存在7年之久。成功利用漏洞需要满足以下三个条件:
1. 在互联网上开启文件和打印机共享的445端口,可以通过该端口与存在漏洞的主机进行通信。
2. 配置共享文件目录为可写权限。
3. 攻击者已知或可猜测出对应文件的路径。
该漏洞主要原因是is_known_pipename函数中的pipename参数中存在路径符号问题,远程攻击者通过构造一个有’/’ 符号的管道名或路径名,利用客户端将指定库文件上传到具有可写权限的共享目录加载恶意文件并提权到samba所在服务器的root权限,造成任意代码执行。
CNVD对上述漏洞的综合评级为“高危”。
二、漏洞影响范围
漏洞影响Samba3.5.0及3.5.0和4.6.4之间的任意版本(不包括4.5.10、4.4.14、4.6.4)。
三、漏洞修复建议
厂商已经在4.6.4、4.5.10、4.4.14等版本中修复了该漏洞,请参考如下方式进行升级:
1. 使用源码安装的Samba用户,请尽快下载最新的Samba版本手动更新:
https://download.samba.org/pub/samba/stable/samba-4.6.4.tar.gz
https://download.samba.org/pub/samba/stable/samba-4.5.10.tar.gz
https://download.samba.org/pub/samba/stable/samba-4.4.14.tar.gz
2. 使用二进制分发包(RPM等方式)的用户立即进行yum,apt-get update等安全更新操作。
临时解决方案:
无法立即修复漏洞的用户可以通过在Samba配置文件中smb.conf的[global]节点下增加添加如下代码并重启服务阻止客户端安全访问网络服务器:
nt pipe support = no
附:参考链接:
https://lists.samba.org/archive/samba-announce/2017/000406.html
http://www.cnvd.org.cn/flaw/show/CNVD-2017-07432