引言
"请检查您的外网边界是否有安全设备。"
"我们有下一代防火墙、入侵防御系统(IPS)和 Web 应用防火墙(WAF),三层防护,固若金汤。"
这样的对话在安全审查中屡见不鲜。但现实往往是:攻击者通过一封钓鱼邮件、一个未修复的漏洞,甚至一套默认口令的 VPN 设备,轻松突破外网防线。真正决定企业安全命运的时刻,发生在攻击者进入内网之后的那 24 小时——横向移动。
根据 Verizon 2025 年数据泄露调查报告,超过 70% 的重大数据泄露事件中,攻击者利用了内网横向移动技术从初始入口扩散到核心目标。而另一个令人沮丧的事实是:攻击者在内网中的平均驻留时间仍高达 160 天以上。
这意味着,绝大多数组织虽然建了"围墙",但围墙内几乎"不设防"。本文将从攻击者的视角出发,剖析横向移动的技术原理,并给出从防御设计、检测到应急响应的完整体系建设思路。
一、理解横向移动:攻击者进入内网后做什么?
1.1 攻击链全景
典型的网络攻击链条可以分解为七个阶段(参照 MITRE ATT&CK 框架):
- 侦查(Reconnaissance):收集域名、IP 范围、员工信息等。
- 武器化(Weaponization):制作恶意载荷。
- 投递(Delivery):钓鱼邮件、漏洞利用、水坑攻击等。
- 初始突破(Initial Access):获得内网中的第一个立足点。常见入口包括 VPN 弱口令、钓鱼获得的凭据、未修复的 RCE 漏洞等。
- 执行(Execution):运行恶意代码、建立 C2 连接。
- 持久化(Persistence):注册计划任务、安装后门。
- 横向移动与提权(Lateral Movement & Privilege Escalation):在内部网络扩散,最终到达核心目标。
第七阶段,就是内网防御的决胜点。
1.2 横向移动的常见方式
攻击者在内网中像幽灵一样移动,通常采用以下方式:
1. SMB / WMI 远程执行
- 攻击者获取了某台普通工作站的本地管理员权限后,使用 Mimikatz 等工具从内存中提取域管理员的凭据哈希。
- 利用提取的凭据,通过 SMB(Server Message Block)协议远程连接域控制器或其他关键服务器,执行恶意命令。
- 典型工具:PsExec、WMI、WinRM。
2. RDP 横向跳跃
- 攻击者利用窃取的凭据,通过 RDP(远程桌面协议)登录内网中的其他服务器。
- 从一台服务器跳到另一台,逐步靠近核心目标。
- 这种方式的隐蔽性相对较差,但如果攻击者清除了日志,很难追溯。
3. Pass-the-Hash / Pass-the-Ticket
- 不需要知道明文密码,只需要提取 NTLM 哈希或 Kerberos Ticket,就能用这些凭证登录其他机器。
- 这是 Windows 域环境中最高效、最有破坏力的横向移动手段。
4. 利用信任关系
- 域信任、林信任、AD 联合认证等,一旦被攻击者利用,可以在多个大型网络之间跳跃。
- 最经典的案例:利用域信任从一个子域跳到父域,最终控制整个 AD 林。
5. SSH 密钥滥用
- 在 Linux 环境中,攻击者寻找
~/.ssh/authorized_keys和id_rsa文件。 - 一旦找到某台机器的私钥,就可以用它登录配置了该公钥的所有其他机器。
1.3 攻击者的工具链
现代攻击者手中有一套成熟的工具链:
- Cobalt Strike:渗透测试的"标准装备",提供丰富的横向移动功能(SMB Beacon、TCP Beacon、SSH 隧道等)。
- Mimikatz:从 Windows 内存中提取凭据的标准工具。
- BloodHound:利用图数据库分析 AD 域环境中的攻击路径,可视化展示从"普通用户"到"域管理员"的每一个跳跃步骤。
- Impacket:Python 实现的网络协议工具套件,支持 SMB、WMI、Kerberos 等多种协议的攻击利用。
二、防御设计:从"马奇诺防线"到"纵深防御"
2.1 核心原则:最小权限 + 网络分段
内网安全不是靠一个超级系统解决的,而是靠多层次、多协议的深度协同防御。核心原则只有两个:
原则一:最小权限(Least Privilege)
- 用户只拥有完成任务所需的最小权限。
- 管理员账户区分用途:普通用户账户用于日常工作,管理账户单独指定,且不加入本地管理员组。
- 使用 JIT(Just-In-Time)权限管理系统,在需要时临时提升权限,用完后立即收回。
原则二:网络分段(Network Segmentation)
- 基于业务功能和安全等级划分VLAN或网络区域。
- 各区域之间通过防火墙隔离,只开放必要端口。
- 限制东西向(East-West)流量的随意流动。
2.2 实战中的网络分段策略
一种经过验证的分段策略如下:
| 区域 | 包含内容 | 访问控制 |
|---|---|---|
| 外网区 | 互联网入口 | DMZ 隔离 |
| DMZ | Web 服务器、邮件网关 | 只开放 80/443/25 |
| 办公网 | 员工工作站、打印机 | 禁止直接访问生产区 |
| 生产区 | 应用服务器、数据库 | 严格 ACL,只允许应用层端口 |
| 核心数据区 | 数据库、文件服务器 | 仅生产区的特定服务器可访问 |
| 管理区 | 堡垒机、AD 服务器 | 专用管理跳板机,不允许远程访问 |
这种划分的核心思想是:即使工作站被攻破,攻击者也看不到生产服务器的网络。
2.3 强化身份与访问管理的几个关键动作
1. 实施 LAPS(本地管理员密码解决方案)
- 管理每台计算机的本地管理员密码,定期自动更换,并存储在 AD 中仅授权人员可读。
- 这是防止凭据复用扩散的最有效手段之一。
2. 启用 Credential Guard 和 Windows Defender Remote Credential Guard
- 利用虚拟化安全技术保护凭据,防止 Mimikatz 从内存中提取凭据。
3. 禁用不必要的远程协议
- 默认禁用 WMI、WinRM、PSRemoting 的非必要实例。
- 对必须使用的 RDP,启用 NLA(网络级身份验证),强制通过凭据验证后才能建立会话。
4. 定期进行 AD 攻击路径审计
- 使用 BloodHound 等工具定期审计 AD 环境,发现从普通用户到域管理的攻击路径风险。
- 对发现的"不合理的组成员关系"、"弱权限委派"等问题及时修复。
三、检测能力:发现"不该有的连接"和"不该做的操作"
防御做不到万无一失,检测是最后一道防线。
3.1 关注的核心检测场景
1. 异常登录行为
- 同一账户在短时间内从多台机器登录(跳跃特征)。
- 非工作时间从未知 IP 登录。
- 从一个非管理员的机器尝试登录域控制器。
2. 异常网络连接
- 工作站向数据库服务器的 1433 端口发起连接——正常的业务系统不应该从工作站直连数据库。
- 大量 SMB 连接:攻击者使用 PsExec 时会通过 SVCCTL PIPE 建立连接,这明显异于正常的文件共享行为。
3. 异常进程行为
- powershell.exe 从网络下载并执行脚本(IEX 远程下载)。
- rundll32.exe 或 regsvr32.exe 执行了 DLL 文件(恶意代码注入)。
- 父进程和子进程的关系不合理(如 Word 启动 cmd.exe)。
4. 凭据提取行为
- lsass.exe 进程被其他进程访问(Mimikatz 的典型行为)。
- 大量 NTLM 认证尝试使用不同的用户名但相同的来源 IP。
3.2 借助 EDR 和 SIEM 构建检测能力
单纯靠人工检查所有日志是不现实的。现代检测体系的构建需要:
- EDR(终端检测与响应):在工作站和服务器部署 EDR Agent,捕获进程创建、网络连接、注册表变更、文件操作等细粒度行为。主流方案包括 CrowdStrike、SentinelOne、Microsoft Defender for Endpoint 等。
- NDR(网络检测与响应):在网络关键节点旁路部署 NDR 设备,分析流量协议元数据和原始负载,发现横向移动流量特征。
- SIEM(安全信息与事件管理):将 EDR、NDR、防火墙、AD 日志等事件统一收集,建立关联分析规则。
关键关联规则示例:
IF
登录事件(Event ID 4624:成功登录)
AND 登录类型 = 3(网络登录)
AND 源 IP = 非管理员工作站的 IP
AND 目标 = 域控制器的 445 端口
THEN
告警:可能发生横向移动攻击
如果每天接收到几十条这样的告警,只靠人工逐一排查显然不现实。建议将告警分级:关键告警(如特权账号横向登录)即时响应;普通告警进入工作流队列,定期处理。
3.3 蜜罐与诱饵的实战应用
在防不住、也未必能检测到的情况下,蜜罐(Honeypot)技术可以作为"最后一道信号":
- 低交互蜜罐:模拟常见服务(SMB、RDP、SQL Server),攻击者扫描到后以为是真的,但实际上所有操作都被记录。
- 高交互蜜罐:模拟真实的工作站或服务器,部署假数据,专门吸引攻击者深入使用。
- 诱饵文件:在文件服务器或桌面放置带有特殊标记的假文件(如"财务数据.xlsx"),一旦被访问即触发告警。
蜜罐的特有优势在于:合法的内部操作不会触碰蜜罐,但只要有人触碰,几乎可以确定是恶意行为——极大降低误报率。
四、响应与改进:事件发生后的黄金操作
4.1 事件响应的三个阶段
阶段一:抑制(Containment)(0-4 小时)
- 确认受感染的机器范围,立即隔离(断网或账号禁用)。
- 更改所有可能被泄露的账户密码。
- 禁止使用被感染的机器上的凭据进行任何操作。
- 保护现场取证,拍摄屏幕照片、保留内存镜像、保存日志。
阶段二:根除(Eradication)(4-48 小时)
- 重建受感染的服务器/工作站,从干净的备份恢复或全新安装。
- 彻底排查攻击路径,确定攻击者是如何进入的、跳过了哪些机器、是否留下了后门。
- 修复发现的漏洞(弱口令、未打补丁、不合理的权限配置等)。
阶段三:恢复与改进(Recovery & Improvement)(48 小时以上)
- 逐步恢复服务,优先恢复核心业务。
- 复盘事件,深入分析薄弱环节。
- 制定改进计划并落实:加强意识培训、升级防御策略、完善检测规则。
4.2 常态化防御建设清单
经历了与攻击者的"内网博弈"之后,一个成熟的组织应该建立如下常态化运行机制:
-
每日
- 检查 EDR 告警,确认无横向移动迹象。
- 检查 VPN 和远程访问的异常登录日志。
-
每周
- 审查权限变更申请,确认最小权限原则的执行情况。
- 检查服务器和重要设备的补丁安装状态。
-
每月
- 使用 BloodHound 或其他工具扫描 AD 攻击路径,生成风险报告。
- 模拟一次横向移动攻击(由蓝队或第三方执行),检验检测体系是否有效。
-
每季度
- 进行一次全面的内网渗透测试,重点检验网络分段有效性。
- 更新安全策略和基线配置。
-
每年
- 进行大规模应急演练,模拟勒索软件或数据泄露场景。
- 复盘年度安全事件,优化安全预算分配。
五、结语
内网横向移动防御不是一个技术难题,而是一个系统工程难题。它涉及网络安全架构(网络分段)、身份安全(最小权限)、终端安全(EDR)、检测能力(日志与告警)、响应能力(应急流程)等多个维度。
对于大多数组织来说,真正需要转变的是思维模式:不要假设敌人进不来,而要假设敌人已经进来了。在这个前提下,每一个防御决策都会变得不同。
- 不仅仅要考虑"如何挡住攻击者",还要考虑"如何让攻击者在突破第一道防线后举步维艰"。
- 不仅仅要防御已知的攻击手法,还要通过日志和检测手段,让每一次异常操作都留下痕迹。
- 不仅仅在事件发生后"灭火",更要通过复盘和改进,让下一次的防线更加坚固。
内网防御没有银弹,但做好基础工作——网络分段、最小权限、凭证保护、检测能力建设——就能将攻击者的停留时间从"月"缩短到"小时",将破坏范围从"全网络瘫痪"缩小到"单台机器失陷"。
从外部防护到内网纵深,这才是 2026 年网络安全的完整拼图。