内网横向移动-一台打印机,成了攻破全公司的跳板
客户请我们做授权的内网渗透测试。合同签完,甲方安全负责人把网络拓扑图递过来,说:我们的核心数据在内网,你们试试能不能摸到。
三天后,我们坐在核心数据库服务器前面,屏幕上跳着生产库的备份任务。而我们的入口,是行政楼三层那台共享打印机。
横向移动(Lateral Movement,MITRE ATT&CK TA0008)是内网渗透的第二步——你已经拿下一台机器,接下来用它当跳板,一台接一台,摸向真正的目标。
大多数公司的问题不是边界防护差,是边界破了之后,内网一马平川。外网打进来只算进门,从打印机渗透到核心数据库,才是内网安全真正的风险暴露。
要理解横向移动,先理解内网为什么「一马平川」:
1. 凭据复用:同一套账号密码在内网大量复用。本地管理员密码相同、域账号共用、运维账号与办公账号混用——拿到一个,等于拿到一批。
2. 内网扁平化:缺乏网络分段,办公区与服务器区同网段,445/3389 等管理端口跨网段直连无限制——从任何一台机器都能摸到任何一台机器。
跳板机:Windows 10 虚拟机(模拟已失陷的行政楼电脑)
目标机:Windows Server 2019 虚拟机(模拟文件服务器)
网络:VMware 自定义 VMnet,三台机器同一隔离网段 192.168.200.0/24
关键前提:先通过钓鱼/漏洞拿下一台机器(本文从跳板机已失陷开始)
失陷机器上最常见的密码来源,就是本机存储的凭据:
拿到哈希后不要急着破解。先用哈希传递(Pass-the-Hash,简称 PtH)试试能不能直接登录别的机器。
在失陷跳板机上搭建 SOCKS 代理,把攻击流量通过跳板机转发进内网。常用工具:impacket-socksServer(基于 SMB 会话)、frp、reGeorg 等。
impacket-socksServer 默认在攻击机本地监听 1080 端口提供 SOCKS5 代理服务,流量通过 SMB 命名管道转发至跳板机,无需在跳板机落地任何文件,属于无文件代理隧道——这正是后续 proxychains 配置 127.0.0.1:1080 的原因。这一步不可省略:代理有两个作用——隐藏攻击机真实 IP,规避边界流量检测;同时让扫描、利用工具以跳板机为起点进入内网。横向移动「以点带面」的基础逻辑就是它。
参数选型依据:-sT 使用 TCP 全连接扫描,适配代理链路特性(proxychains 仅支持转发完整 TCP 连接,无法转发半开扫描的独立 SYN 包,若换成 -sS 结果会全部失效);-Pn 跳过 ICMP 存活探测,避免代理无法转发 ICMP 包导致主机被误判为离线。端口说明:22 对应 SSH 服务,多用于 Linux 设备与开启 OpenSSH 的 Windows 主机;445(SMB)、3389(RDP)、5985(WinRM) 是横向移动的高频入口,优先确认。
-hashes 参数标准格式为 LM哈希:NTLM哈希;Windows Vista 及以后系统默认禁用 LM 哈希,因此 LM 部分留空,仅保留冒号+NTLM 哈希。
这里有一个常见误区要纠正:impacket-psexec 并不是「无文件落地」。它的完整执行流程是:通过 SMB 访问目标 ADMIN$ 共享 → 写入服务可执行程序(默认 psexesvc.exe)→ 调用服务控制管理器(SCM)创建并启动服务 → 执行命令后删除服务与文件。严格属于有文件落地的远程执行手法,只是文件停留时间短、服务名可自定义,具备一定检测规避性。
真正接近「无文件落地」的同类手法:impacket-wmiexec(通过 WMI 创建进程,无额外文件落地)、impacket-atexec(仅写入计划任务配置)。
| 攻击手法 | 核心原理 | ATT&CK 编号 | 检测要点 |
|---|---|---|---|
| 哈希传递(PtH) | 直接使用 NTLM 哈希完成身份认证,无需破解明文 | T1550.002 | 登录源 IP 与账号常驻地不符;大量异常网络登录 |
| 票据传递(PtT) | 窃取/伪造 Kerberos 票据(TGT/ST)完成认证,域环境高发 | T1550.003 | 异常 Kerberos 服务票请求;票据生命周期异常 |
| SMB 服务创建(PsExec) | 远程写入服务程序并启动,获取系统权限 | T1021.002 + T1543.003 | 陌生服务创建事件;System 权限进程伴随 SMB 来源 |
| WMI 远程执行 | 调用 WMI 接口远程创建进程执行命令 | T1047 | wmic/Invoke-WmiMethod 异常调用链;WMI 活动日志异常 |
| 计划任务执行 | 创建定时任务执行恶意指令 | T1053.005 | 无管理员操作记录的陌生定时任务 |
| RDP 会话劫持 | 窃取已建立的 RDP 会话绕过认证 | T1563.002 | 非工作时段 RDP 会话异常;会话所属用户与登录用户不符 |
横向移动最高发的报错就是 STATUS_ACCESS_DENIED。除了常见原因,还有一个内网环境里最容易被忽略的:UAC 远程令牌过滤。
① 目标 445 被防火墙挡——检查 Windows 防火墙「文件和打印机共享」规则;
② administrator 以外的本地管理员账号没有远程管理权限——本地管理员组账号不一定默认拥有 SMB 远程管理权限;
③ 哈希选错——从 secretsdump 输出中选取对应用户的哈希值;
④ ⭐ UAC 远程令牌过滤(最容易被忽略):使用非内置 Administrator(RID 500)的本地管理员账号远程 SMB/哈希传递时,即使密码哈希完全正确,也会返回访问拒绝。原因是 Windows 默认开启 UAC 远程令牌过滤(LocalAccountTokenFilterPolicy 默认值 0):本地管理员账号远程访问时,系统自动剥离其管理员权限,仅授予普通用户令牌;只有内置 Administrator(RID 500)默认不受此限制。
⑤ 目标账号为空密码:Windows 默认安全策略「空密码本地账号仅允许控制台登录」——目标账号为空密码时,即使凭据正确,远程访问也会被拒绝。
针对:凭据复用、哈希窃取
1. 本地管理员密码治理:部署微软 LAPS,为每台终端/服务器生成独立随机本地管理员密码并自动定期轮换,从机制上解决本地管理员账号的密码复用问题。注:Windows 11 22H2 / Server 2022 及以上版本已内置原生 Windows LAPS,无需额外安装客户端。
2. 域账号权限最小化:严格分级管控域账号,禁止域管理员账号登录普通终端;服务器运维账号与办公账号隔离,单账号仅授权单台/单组服务器。
3. 内存凭据防护:启用 Windows Credential Guard(基于虚拟化安全技术 VBS 保护 LSASS 进程),大幅提升内存凭据窃取难度,可有效防护 mimikatz 等常规用户态内存哈希抓取工具。
4. RDP 凭据防护:启用远程凭据防护(Remote Credential Guard)或受限管理员模式,防止 RDP 登录后凭据留存于目标主机内存。
5. 协议降级治理:兼容业务前提下禁用 NTLMv1,优先使用 Kerberos 认证,降低凭据破解与 NTLM 中继攻击风险。
针对:内网平坦、端口无限制
1. 网络分段与微隔离:生产区、研发区、财务区与办公区通过防火墙/VLAN 隔离;核心服务器区实施微分段,仅开放业务必需端口与源地址。
2. 高危端口精准管控:默认拒绝跨网段访问 445(SMB)、135(RPC)、3389(RDP)、5985(WinRM) 等远程管理端口,仅对指定运维 IP 白名单放行。
3. 零信任远程访问:服务器远程管理接入零信任网关,所有访问均需身份认证、设备健康校验,不默认信任任何内网 IP。
针对:远程命令执行、服务创建
1. EDR 专项规则:开启横向移动检测能力,覆盖异常 SMB 连接、远程服务创建、WMI 远程执行、计划任务异常创建、哈希传递行为等场景。
2. 系统基线加固:默认开启 Windows 防火墙,关闭非必要 SMB 共享;保持 UAC 远程令牌过滤默认开启——低成本高收益。
3. 漏洞闭环管理:及时修复 SMB、RPC、RDP 等协议高危漏洞(如永恒之蓝、BlueKeep),封堵漏洞型横向入口。
针对:异常登录、隐蔽操作
1. 全量审计开启:全域开启安全审计策略,覆盖登录成功/失败(4624/4625)、特权登录(4672)、服务创建(4697)、计划任务创建(4698)、WMI 活动等关键事件。
2. 异常登录检测规则:同一账号短时间内跨多个 IP 登录;非工作时段特权账号登录服务器;服务器管理账号出现在普通终端登录日志;办公网段 IP 直接访问核心服务器远程端口。
3. 定期威胁狩猎:基于 MITRE ATT&CK 横向移动战术,定期排查内网 SMB 连接链路、远程执行日志,发现潜伏的攻击行为。
适用环境:Windows Server 域控制器,需开启安全登录审计;权限:需以域管理员身份执行。
输出解读:
1. 核心异常指标是「不同源IP数」——一个账号从多个不同 IP 登录,是横向移动的典型信号;账号「登录总次数」偏高且集中在凌晨,同样需要警惕。
2. 扩展用法:a) 若需看登录行为分布,可在 Select 阶段加上「登录类型」(2=交互式,3=网络登录/SMB,10=RDP),按「账号+登录类型」分组;b) 新增事件 ID 4625(登录失败)排查暴力破解;c) 新增 4672(特权登录)排查高权限账号异常使用。
3. 局限性:仅能检测基于日志的显性异常,无法检测无日志的内存级攻击,需配合 EDR 能力。
那台打印机为什么能成为入口?真实环境里,打印机、摄像头等办公 IoT 设备是内网安全的典型盲区:普遍缺乏安全管控,却常与核心办公网段同 VLAN,是优质的横向跳板。两类典型真实场景:
1. 设备自身漏洞:打印机 Web 管理界面存在弱口令/未授权访问,攻击者直接读取设备配置,获取打印机用于扫描上传的 SMB 共享账号——该账号常被配置为高权限,且在内网多台服务器复用;
2. 驱动共享凭据泄露:域内通过组策略下发的共享打印机驱动目录中,包含带明文凭据的安装脚本,或驱动服务绑定了高权限域账号,低权限终端即可访问共享目录窃取凭据。
一马平川的内网,等于把门锁配了一把万能钥匙。攻击者不需要多厉害,他只需要你的内网够平。
技术本身无善恶。安全从业者的核心价值,是发现风险、修复风险,而非利用风险。
② 微软《缓解哈希传递与其他凭据窃取技术》 — learn.microsoft.com
③ impacket 官方文档 — github.com/fortra/impacket
④ NIST SP 800-207 零信任架构 — nist.gov
⑤ 微软 Windows LAPS 官方文档 — learn.microsoft.com
⑥ Sysinternals PsExec 工作原理文档 — learn.microsoft.com
文章标题:内网横向移动-一台打印机,成了攻破全公司的跳板
文章链接:https://jiacy.cn/nwhxyd--ytdyj-clgpqgsdtb.html
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自CY !
如果觉得文章对您有用,请随意打赏。
您的支持是我们继续创作的动力!
微信扫一扫
支付宝扫一扫



