记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

Linux版“永恒之蓝”远程代码执行漏洞技术分析

2017-05-26 07:05
天融信阿尔法实验室 李喆 李闪 姜利晓  

一、漏洞描述

Samba是一套可使UNIX系列的操作系统与微软Windows操作系统的SMB/CIFS网络协议做连结的自由软件。这个漏洞使得Samba客户端可以主动上传共享库到Samba服务器同时加载并执行该动态库导出函数。 攻击者利用漏洞可以进行远程代码执行,具体执行条件如下: 1)系统开启了文件/打印机共享端口445 2)共享文件夹拥有写入权限 3)恶意攻击者需猜解Samba服务端共享目录的物理路径 满足以上条件时,由于Samba能够为选定的目录创建网络共享,当恶意的客户端连接上一个可写的共享目录时,通过上传恶意的共享库文件,触发漏洞使samba服务端加载并执行它,从而实现了远程代码执行。根据服务器的配置情况,恶意代码还有可能以root权限执行。 漏洞编号:CVE-2017-7494 危害评级:高危 影响范围:所有介于 Samba 3.5.0 ~ 4.6.4之间的版本。其中(4.6.4/4.5.10/4.4.14 版本)不受影响。  

二、漏洞复现

通过一个可写账号,上传恶意共享库文件,触发恶意共享库文件实现远程命令执行。 安装Samba 按照以下要求安装即可 Samba Version < 4.6.4 Samba Version < 4.5.10 Samba Version < 4.4.14   配置samba 添加下面这些即可,如果之前conf文件中包含的注释即可 workgroup = WORKGROUP netbios name = LinuxSir05 server string = Linux Samba Server TestServer #security = share [models] path = /tmp available = yes browsable = yes writable = yes create mask = 0777 write list = debian guest ok = yes 如下图所示: 1 然后重新加载 /etc/init.d/samba reload 最后启动服务 /etc/init.d/samba restart 2 配置 msf Use exploit/linux/samba/is_known_pipename 3 Set target 0 Set RHOST localhost Exploit 4 最终结果如图所示: 5

三、漏洞原理分析

下载版本4.6.3 进行静态分析漏洞原理: 漏洞通过一个具有可以权限的samba账号上传一个恶意共享动态库上去,并触发恶意功能。 ,我们这里阐述的是如何加载的恶意动态库。 漏洞触发位置: 6 67   在这里可以看到pipename ,这个是管道名,需要利用这个管道名是恶意共享库so文件参数,比如/tmp/xxx.so ,  这个参数在传递进smb_probe_module里,跟进下这个函数: 9 10 又把参数传递进入了do_smb_load_module()函数里,再跟进 11 可以看到如果管道名字存在/, 会进入else 里调用load_module()函数,把管道名传递进来,再继续跟进: 12 可以看到把管道名传递进入到dlopen函数也就是打开恶意构造的共享库文件,接着把句柄给了dlsym 加载SAMBA_INIT_MODULE,也就是说恶意共享库的功能要写入到samba初始化函数里才能被加载,这样就触发了恶意构造的函数功能呢。  

四、修复建议

官方补丁: 官方已经发布安全更新包,用户可以通过以下2种方案进行安全更新操作。 1、通过源码安装的Samba使用者,从Samba官方下载补丁包或者安装最新版Samba (安全补丁下载地址:https://www.samba.org/samba/history/security.html) 2、使用二进制分发包(RPM等方式)的Samba使用者通过yum,apt-get update      等命令进行安全更新操作   临时缓解策略: 1、修改samba文件系统中可写文件共享目录的安全属性,使用“noexec”选项 注:noexec 选项指明在该文件系统上不允许二进制文件或脚本的执行 2、修改samba配置文件smb.conf,在[global]节中增加如下信息 “nt pipe support = no”。 修改完毕重启samba服务。    
知识来源: blog.topsec.com.cn/ad_lab/linux%e7%89%88%e6%b0%b8%e6%81%92%e4%b9%8b%e8%93%9d%e8%bf%9c%e7%a8%8b%e4%bb%a3%e7%a0%81%e6%89%a7%e8%a1%8c%e6%bc%8f%e6%b4%9e%e6%8a%80%e6%9c%af%e5%88%86%e6%9e%90/

阅读:266815 | 评论:0 | 标签:安全通报 技术分享 漏洞

想收藏或者和大家分享这篇好文章→复制链接地址

“Linux版“永恒之蓝”远程代码执行漏洞技术分析”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云