从解题思维到攻击链构建:红队视角的范式转移
很多刚接触安全行业的朋友,手里攥着几座 CTF 奖杯,却在第一次参与企业级红蓝对抗演练时感到手足无措。在 CTF 的解题模式下,目标往往非常明确:一个 IP、一个端口、一个已知的漏洞类型,甚至题目名称都在暗示你该用什么工具。只要按图索骥,拿到 Flag 就算胜利。然而,真实的内网渗透完全是另一套逻辑。这里没有明确的“题目”,只有错综复杂的业务系统和层层叠叠的防御设施。
真实的企业环境更像是一个迷雾重重的迷宫。当你通过 Web 漏洞拿到第一台服务器的权限(Initial Access)时,战斗才刚刚开始。此时的你,通常只拥有一个低权限的 WebShell,身处 DMZ 区,面对的是完全陌生的内网拓扑。CTF 中那种“单点突破即结束”的思维必须立刻切换为“攻击链(Kill Chain)”思维。你需要思考的不是如何解出下一个谜题,而是:当前这台机器在内网中扮演什么角色?域控在哪里?核心数据资产存放在哪?如何在不触发态势感知报警的前提下,从这台跳板机向深处移动?
这种思维模式的转变是新手进阶的最大门槛。在 CTF 中,我们追求的是利用技巧的炫酷和解题速度;而在红队实战中,隐蔽性、持久性和对业务逻辑的理解才是核心。一次成功的内网渗透,往往不是靠某个高精尖的 0day 漏洞一锤定音,而是靠对大量低危信息的串联,通过精细的信息收集、周密的路径规划以及稳健的横向移动,最终像多米诺骨牌一样推倒整个防御体系。
破局关键:超越端口扫描的深度信息收集
在 CTF 比赛中,信息收集往往局限于nmap扫出的开放端口和dirsearch爆破出的目录。但在企业内网,这种浅层的扫描不仅效率低下,还极易触发防火墙或 IDS 的告警。真正的红队操作,始于对目标环境的深度画像,这需要结合被动收集与主动探测,构建出一张立体的网络地图。
进入内网后的第一步,绝不是盲目运行自动化扫描器,而是进行精细化的“本地侦察”。你需要迅速回答几个核心问题:当前用户的权限级别、所在网段结构、域环境是否存在以及关键服务器的位置。在 Windows 域环境下,一系列原生命令是你的最佳助手。例如,使用net user /domain可以列出域内所有用户,而net group "Domain Admins" /domain则能直接锁定最高权限的管理员组名单。更进一步的,通过nltest /dclist:域名可以快速定位域控制器(DC)的 IP 地址,这是后续所有攻击的核心目标。
除了命令行,对网络流量的分析同样至关重要。在真实的内网中,DNS 请求往往暴露了内部系统的真实架构。通过监控或查询 DNS 缓存,你可以发现那些未对外公开的内部测试系统、备份服务器或是老旧的管理后台。此外,ARP 表和路由表(route print)能帮你理清内网的子网划分情况,判断是否存在多网段隔离,从而决定下一步是进行同网段横向移动,还是需要配置隧道进行跨网段穿透。
值得注意的是,现代企业的防御体系越来越依赖行为分析。因此,信息收集必须遵循“低频、分散、伪装”的原则。避免在短时间内对大量 IP 进行全端口扫描,而是采用针对性的单端口探测,或者利用已有的合法连接(如 SMB 会话)来枚举共享资源。将零散的信息碎片拼凑起来——比如发现某台开发机的共享文件夹中存有数据库配置文件,或者在某台打印服务器的日志中发现了管理员的登录记录——这些看似不起眼的细节,往往是打开内网大门的钥匙。
域环境下的身份博弈:哈希与票据传递攻击实战
一旦确认目标存在 Active Directory(AD)域环境,攻击的重心就转移到了身份认证体系上。在 CTF 中,我们习惯于破解密码哈希(Hash Cracking),但在企业内网,由于密码复杂度策略和加盐机制,暴力破解往往收效甚微。红队更倾向于利用 Windows 认证协议的特性,进行“哈希传递”(Pass-the-Hash, PtH)和“票据传递”(Pass-the-Ticket, PtT)攻击,实现无需明文密码的权限跃迁。
哈希传递(PtH)的核心在于利用 NTLM 认证协议的缺陷。当攻击者通过 Mimikatz 等工具从内存中提取出用户的 NTLM Hash 后,并不需要知道原始密码,可以直接使用该 Hash 向其他主机发起认证请求。这在域内极为常见,因为许多管理员为了方便,会在多台服务器上复用相同的账号。操作上,可以利用impacket-psexec工具链,配合-hashes参数直接指定 LM:NTLM 哈希值进行远程命令执行。例如:
psexec.py administrator@target_ip-hashes:<NTLM_HASH>cmd.exe这条命令绕过了密码验证环节,直接以管理员身份建立了 SMB 会话。需要注意的是,高版本的 Windows 默认开启了受限管理员模式(Restricted Admin),可能对 PtH 有所限制,此时需要结合 WMI 或注册表修改等技巧进行绕过。
如果说 PtH 是利用了认证的短板,那么票据传递(PtT)则是直接攻破了 Kerberos 协议的核心。在 Kerberos 认证流程中,用户登录后会获得一张票据授予票据(TGT)。如果攻击者能够窃取到域管理员的 TGT(通常存储在内存中),就可以伪造任意用户的身份,甚至生成所谓的“黄金票据”(Golden Ticket),获得对整个域的永久控制权。使用 Mimikatz 的kerberos::ptt <ticket.kirbi>命令,可以将窃取的票据注入当前会话。随后,任何需要域认证的操作(如访问文件共享、连接数据库)都会自动使用这张合法的票据,防守方在日志中看到的将是完全合法的登录记录,极难察觉。
这两种技术的本质,都是将“知道什么”(密码)转化为“拥有什么”(Hash 或 Ticket)。在内网渗透中,一旦拿下任意一台拥有高权限账号登录过的机器,就意味着整个域的安全边界可能已经名存实亡。因此,红队操作中非常强调“凭证搜集”的优先级,哪怕只是一个普通域用户的 Hash,也可能成为横向移动的突破口。
隐蔽的横向移动:WMI 与 PsExec 的战术选择
拿到凭证只是第一步,如何将控制权从当前跳板机扩展到内网的其他关键节点,即“横向移动”,是检验红队能力的关键环节。在充满杀毒软件(AV)和终端检测响应系统(EDR)的环境中,传统的木马上传方式风险极高。因此,利用系统自带管理工具(Living off the Land, LotL)成为了主流选择,其中 WMI(Windows Management Instrumentation)和 PsExec 是最常用的两种手段。
PsExec是 Sysinternals 套件中的经典工具,它通过 SMB 协议在远程主机上创建服务并执行命令。其优势在于使用简单、功能强大,几乎可以执行任何本地命令。然而,正因为其知名度太高,几乎所有的主流杀软都会对其特征码进行查杀,且其创建服务的行为在系统日志(Event Log)中会留下明显的痕迹(如 Event ID 7045)。在对抗激烈的环境中,直接使用原版 PsExec 无异于自曝行踪。红队通常会对其进行源码修改、重新编译,或者使用类似的开源替代品(如 PaExec),甚至通过 PowerShell 重写其逻辑,以规避静态特征检测。
相比之下,WMI提供了更为隐蔽的横向移动通道。WMI 是 Windows 系统的核心管理组件,允许远程查询系统信息和执行进程。利用 WMI 执行命令不需要在目标机器上创建永久性服务,也不会像 PsExec 那样留下明显的服务安装日志,因此被称为“无文件攻击”的一种典型形式。通过wmic命令行或 PowerShell 的Invoke-WmiMethod,攻击者可以在远程主机上启动进程:
wmic/node:<Target_IP>/user:<Username>/password:<Password>processcall create"cmd.exe /c whoami"这种方式产生的流量混合在正常的管理流量中,难以被基于规则的防火墙区分。当然,高级的 EDR 系统会监控 WMI 的异常调用(如非管理员账户频繁调用 Win32_Process 类),因此在使用时仍需注意频率控制和上下文伪装。
在实际操作中,选择哪种方式取决于目标的防御等级和网络策略。如果目标开启了严格的 SMB 访问控制,WMI 可能是唯一的选择;如果目标对 PowerShell 有严格的脚本块日志记录(Script Block Logging),那么经过混淆的 PsExec 变体可能更有效。关键在于灵活组合,利用系统自身的信任机制,在防守方的盲区中完成权力的交接。
对抗态势感知:流量伪装与权限维持的艺术
当攻击深入内网核心,面对的不再是单一的杀毒软件,而是集成了流量分析、行为建模和威胁情报的态势感知平台。此时,任何异常的流量特征或高频的操作行为都可能触发红色警报。红队行动的最后阶段,实际上是一场关于“隐身”与“持久”的博弈。
流量特征伪装是规避检测的第一道防线。默认的 C2(命令与控制)流量往往具有明显的指纹特征,容易被流量分析设备识别。成熟的红队操作会使用域名前置(Domain Fronting)、CDN 跳转等技术隐藏真实的 C2 服务器 IP,并将恶意流量伪装成正常的 HTTPS 网页浏览或云服务更新流量。此外,调整心跳包的频率,使其看起来像正常的用户操作节奏,避免突发的大流量数据传输,也是基本的生存法则。在某些极端场景下,甚至会将指令隐藏在 DNS 查询记录或图片元数据中,利用协议本身的合法性来穿透检测。
权限维持则是为了确保即使初始入口被封堵,攻击者仍能保留重返内网的能力。传统的注册表启动项或计划任务早已被监控得密不透风。现代红队更倾向于利用更深层的持久化机制,例如:
- 影子账户:在域控上创建隐藏的 Administrator 组成员,即便主账号被重置,后门依然存在。
- SSP(Security Support Provider):通过注入 DLL 到 LSASS 进程,截获所有登录凭证,实现长期的凭证窃取。
- Web Shell 变种:利用中间件特性(如 IIS 的模块、Tomcat 的 Filter)植入内存马,这种后门不落地文件,重启前难以通过文件扫描发现。
然而,必须强调的是,最高级的权限维持是“无痕”的。与其留下后门等待被发现,不如掌握足够的凭证和拓扑信息,随时可以通过合法的身份重新进入。在红蓝对抗的终局,胜负往往不取决于谁留下的后门更隐蔽,而取决于谁对系统的理解更深刻,谁能更快地在对方发现之前完成目标并撤离。
从 CTF 的解题快感走向内网攻防的复杂博弈,这不仅是技术的升级,更是心智的成熟。真实的网络安全没有标准答案,每一次渗透都是对人性、逻辑与技术的综合考验。唯有建立起系统性的攻击面思维,才能在变幻莫测的数字战场中,真正看懂防御的弱点,守护业务的安全。