Samba漏洞NSA免疫工具
手机扫码下载
应用截图
应用介绍
Samba漏洞NSA免疫工具上线。目前,已经发现超过10万台计算机正在运行Samba软件的漏洞版本。这个免费的网络软件是为运行在Linux和Unix系统上的计算机开发的。请使用此软件的同学尽快升级,以免电脑中招!
Samba漏洞背景:
2015年2月23日,红帽产品安全团队发布了一个Samba服务器smbd的漏洞公告。该漏洞编号为CVE-2015-0240,几乎影响所有版本。
该漏洞的触发不需要通过Samba服务器的账号认证,而smbd服务器通常以root权限运行。如果利用该漏洞可以实现任意代码执行,攻击者可以远程获取系统的root权限,危害极大,因此该漏洞的CVSS评分也达到10分。
该漏洞的基本原理是将堆栈上未初始化的指针传递给TALLOC_FREE()函数。要利用这个漏洞,我们首先需要控制堆栈上未初始化的数据,这与编译后的二进制文件中堆栈的布局有关。
为此,国外一些安全研究者对不同Linux发行版上的二进制文件进行了分析,其中Worawit Wang(@sleepya_)给出了一个很好的结果。他证实,在Ubuntu 12.04 x86 (Samba 3.6.3)和Debian 7 x86 (Samba 3.6.6)中,可以利用该漏洞实现远程代码的任意执行。请参考中的注释。
后来英国老牌安全公司NCC集团的研究人员给出了利用该漏洞的思路[4],但没有给出利用细节和利用代码。
技术分析:
正如官方所描述的,该漏洞只能通过可写的samba用户权限(samba默认由root执行)提升到Samba所在服务器的root权限。
从补丁来看,如果is_known_pipename函数的pipename中有路径符号就会有问题:
smb_probe_module函数的进一步扩展将导致攻击者加载上传的dll的公告,从而任意执行代码:
具体攻击过程:
1.用“/”符号构造管道名或路径名,如“/home/toor/cyg07.so”
2.主动让服务器smb通过smb的协议返回FID。
3.后续对该FID的直接请求将进入上述恶意进程。
具体攻击结果如下:
1.尝试加载“/home/toor/cyg07.so”恶意so。
2.so代码如下(加载时会调用samba_init_module导出函数)
3.最后,我们可以在/tmp/360sec中看到实际的执行权限(带root权限)。
解决方案:
360网络安全响应中心和360信息安全部建议,使用受影响版本的用户应立即更新安全,
1.对于使用源代码安装的Samba用户,请尽快下载最新的Samba版本并手动更新;
2.使用二进制分发包(RPM等)的用户。)立即执行yum、apt-get更新等安全更新操作;
缓解策略:用户可以通过在smb.conf的[global]节点下添加选项nt pipe support=no,然后重新启动samba服务来缓解该漏洞。