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来任意执行代码了:
具体攻击过程:
具体攻击结果如下:
360网络安全响应中心和360信息安全部建议使用受影响版本的用户立即通过以下方式来进行安全更新操作,
缓解策略:用户可以通过在smb.conf的[global]节点下增加 nt pipe support = no 选项,然后重新启动samba服务, 以此达到缓解该漏洞的效果。
原文作者:cyg07 && redrain