来自:奇虎360技术博客
链接:http://blogs.360.cn/blog/samba远程代码执行漏洞cve-2017-7494分析/
(点击尾部阅读原文前往)
5 月 25 日凌晨,360官方博客紧急发布了 Samba 远程代码执行漏洞警报(CVE-2017-7494)。
Samba 是被广泛应用在各种 Linux 和 Unix 系统上的开源共享服务软件,类似于 Windows 上的 SMB 服务。
此前爆发的“永恒之蓝”勒索蠕虫病毒利用 Windows 的 SMB 漏洞疯狂传播,而 Samba 的漏洞主要威胁 Linux 服务器、NAS 网络存储产品,甚至路由器等各种 IoT 设备也受到影响。
概述
2017年5月24日Samba发布了4.6.4版本,中间修复了一个严重的远程代码执行漏洞,漏洞编号CVE-2017-7494,漏洞影响了Samba 3.5.0 之后和包括4.6.4/4.5.10/4.4.14在内的版本。360网络安全中心 和 360信息安全部的Gear Team第一时间对该漏洞进行了分析,确认属于严重漏洞,可以造成远程代码执行。
技术分析
如官方所描述,该漏洞只需要通过一个可写入的Samba用户权限就可以提权到samba所在服务器的root权限(samba默认是root用户执行的)。
从Patch来看的话,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 update等安全更新操作;
缓解策略:
用户可以通过在smb.conf的[global]节点下增加 nt pipe support = no 选项,然后重新启动samba服务, 以此达到缓解该漏洞的效果。
●本文编号356,以后想阅读这篇文章直接输入
356
即可。
●输入m获取文章目录
Linux学习
更多推荐
《
15个技术类公众微信
》
涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。