第三章:内网协议爆破
核心逻辑:拿到 WebShell 或 VPN 接入内网后,目标是快速识别存活主机并提取凭证。本章重点在于效率与隐蔽性的平衡,防止因高频爆破触发安全告警。
3.1 工具链配置
3.1.1 CrackMapExec (CME)
CME 是内网渗透的“瑞士军刀”,集扫描、爆破、执行于一体。
安装:Kali 自带,或
apt install crackmapexec。核心概念:使用
proto(协议)区分目标服务。
3.1.2 Impacket 工具集
专注于协议层面的攻击,特别是 SMB 和 RPC。
核心工具:
secretsdump.py:导出 SAM/LSA 哈希。psexec.py:基于 SMB 的远程执行。wmiexec.py:基于 WMI 的远程执行(更隐蔽)。
3.2 核心协议实战
3.2.1 SMB (445端口) —— 内网核心
场景:域环境、文件共享、Windows 主机。
攻击模式 | 命令示例 | 说明 |
|---|---|---|
密码喷射 (推荐) |
| 最安全。一个密码试全网,防锁定。 |
枚举共享 |
| 检查匿名访问和可写目录。 |
执行命令 |
| 验证权限,获取主机信息。 |
导出哈希 |
| 获取本地用户 NTLM Hash。 |
📌 实战技巧:
--no-brute参数:在域环境中务必添加,避免触发账户锁定策略(Account Lockout Policy)。--continue-on-success:遇到成功的凭证继续尝试其他主机,不错过任何机会。
3.2.2 SSH (22端口) —— Linux/网络设备
场景:跳板机、Docker 宿主机、路由器。
工具 | 命令示例 | 说明 |
|---|---|---|
Hydra |
|
|
CME |
| 批量验证弱口令。 |
📌 实战技巧:
私钥爆破:如果遇到禁止密码登录,尝试爆破私钥:
hydra -l root -P /path/to/keys ssh://target。已知漏洞:检查 OpenSSH 版本,利用
CVE-2024-6387(RegreSSHion) 等 RCE 漏洞直接获取权限。
3.2.3 RDP (3389端口) —— 远程桌面
场景:运维终端、核心服务器。
痛点:Windows 10/11 默认开启 NLA,且极易触发锁定。
工具 | 命令示例 | 说明 |
|---|---|---|
Crowbar |
| 对 RDP 支持比 Hydra 稳定。 |
CME |
| 验证凭据是否有效。 |
📌 实战技巧:
Restricted Admin Mode:如果目标开启了该模式,可以使用 Hash 直接登录,无需明文密码。
会话劫持:如果爆破出管理员密码,不要直接登录(会踢掉管理员),使用
tscon劫持现有会话。
3.2.4 MSSQL (1433端口) —— 数据库渗透
场景:业务数据库、数据仓库。
操作 | 命令示例 | 说明 |
|---|---|---|
爆破登录 |
| 针对 SA 账户爆破。 |
执行命令 |
| 验证数据库权限。 |
查询数据 |
| 获取版本信息。 |
📌 实战技巧:
xp_cmdshell:如果
sa权限较高,开启xp_cmdshell直接获取系统 Shell。链接服务器:利用 MSSQL 的链接服务器(Linked Server)攻击其他数据库。
3.3 防御视角(给客户)
账户锁定策略:
设置“登录失败 5 次锁定 15 分钟”。
建议:部署密码喷洒(Password Spraying) 检测规则,监控同一密码对大量账户的尝试。
网络隔离:
禁止全网互访 445 端口。
管理端口(22, 3389)仅允许跳板机访问。
日志监控:
Event ID 4625:登录失败。
Event ID 4648:显式凭据登录(攻击者常用)。