
内网安全最尴尬的现实是边界上砸了几百万内网里一台机器被打穿之后攻击者半小时能横到核心库。原因不复杂。边界设备管的是从外面进来而横向移动发生在里面走。你所有的 WAF、IPS、抗 DDoS都在防第一跳可真正造成损失的是第二跳到第十跳——那段路上通常什么都没有。我在一次演练里见过完整的路径从一台测试机的弱口令进10 分钟用本地管理员密码全网统一这一点拿到另一台机器15 分钟从一台运维机上的凭据文件拿到域账号20 分钟最后到数据库服务器。全程没有触发任何告警因为没有任何设备在看东西向流量。这篇按攻击者的路径讲进来之后会走哪五条路、每条路怎么堵、在买微隔离之前能做什么。这不是理论是可以在两周内动手的事。资产底数怎么盘看 甲方安全新人第一个月做什么边界那侧怎么配看 安全设备运营怎么查。一、横向移动的五条路先看清路再谈堵。攻击者在内网里能走的路实际就五条按被用得最多排序路径依赖什么典型手法凭据复用各机器本地管理员密码相同抓一台的 hash撞开一片远程管理端口3389/22/445/5985 对内网全开直接连用拿到的账号登录共享与文件共享目录、部署脚本、配置文件从共享里捞凭据、投毒信任关系域信任、SSO、API 互信从低权限域跳到高权限域运维通道跳板机、堡垒机、自动化平台借运维的合法通道操作这五条里前两条占了实际案例的大多数。原因很朴素它们不需要漏洞只需要一个密码或一个开放的端口。所以内网加固的优先级也应该是这个顺序——先把凭据和端口收掉再谈流量检测和微隔离。反过来做先买微隔离平台往往钱花了最容易被利用的那两条路还开着。二、第一件事本地管理员密码不能全网统一这是投入产出比最高的一项也是最容易被忽略的一项。很多单位的装机流程是同一个镜像、同一个本地管理员口令装完也不改。这样一来攻破一台等于攻破全部——攻击者用 mimikatz 之类的工具从内存里抓出本地管理员 hash然后拿它去撞内网所有机器成功率极高而且不需要任何漏洞。验证方法很简单随便挑两台机器比一下本地管理员的口令 hash 是否相同# Windows导出本地管理员 hash需在目标机执行演练/自查时用 # 注意这是取证级操作必须在授权范围内、且事后清理 reg save HKLM\SAM C:\temp\sam.hiv reg save HKLM\SYSTEM C:\temp\system.hiv # 导出的 hive 用离线工具比对不要在生产机上装破解工具 # 更轻的办法直接对比两台机器的本地管理员口令在授权下各试一次 net use \\HOST-A\IPC$ /user:Administrator 口令 net use \\HOST-B\IPC$ /user:Administrator 口令 # 同一个口令都能通就说明全网统一Linux 侧同理看/etc/shadow里 root 的 hash 是否跨机器一致。修法分两种按规模选。规模小几十台可以手工改改成一机一密口令记在密码管理器里。规模大就要上 LAPS 这类方案域内每台机器自动生成随机的本地管理员口令存在 AD 里只有授权的人能查。# LAPSWindows LAPS启用要点组策略侧配置 # 1) 扩展 AD schema一次 # 2) 组策略计算机配置 - 管理模板 - 系统 - LAPS # - Backup Directory: Active Directory # - Password Settings: 长度 20复杂度高30 天轮换 # - Administrator Account Name: 自定义不要用 Administrator # 3) 授权只给桌面运维组 读取密码 权限改这个会遇到阻力因为运维习惯了一个密码走天下。但它的收益非常直接攻击者拿到一台机器无法凭这一台的凭据拿下第二台。这一条就把横向移动的成本抬高了一个量级。三、第二件事远程管理端口收敛到跳板3389、22、445、5985 这些端口在内网里通常是对全网开放的。这是历史遗留早期没有堡垒机运维从自己电脑直连服务器最方便。收敛的做法是网络层限制不是靠制度要求端口协议应该允许谁访问3389RDP只有跳板机/堡垒机的 IP22SSH只有跳板机/堡垒机的 IP445SMB只有域控、文件服务器之间终端之间禁止5985/5986WinRM只有自动化平台/堡垒机1433/3306/6379数据库只有应用服务器运维走跳板关键的一条是终端到终端禁止 445。这是勒索病毒横向传播的主要通道——一台中招靠 SMB 扫一遍全网共享就铺开了。这一条在防火墙上做或者用终端防火墙策略下发都能实现。验证收敛效果可以从一台普通终端上试连# 从一台业务终端测试这些应该都不通 for p in 3389 22 445 5985; do timeout 2 bash -c echo /dev/tcp/10.20.1.31/$p 2/dev/null \ echo 端口 $p 可达需收敛 || echo 端口 $p 已阻断 done如果这些端口从终端都能连上那你内网的暴露面等于没有边界。四、分段不是买个防火墙分两段绝大多数企业已经做了分段但效果有限因为分的方式不对——通常是按楼层或按 IP 段分而不是按信任等级分。有效的分段按信任等级划四个域就够域里面有什么允许的访问办公域员工终端、打印机只能到办公应用和互联网出口生产域业务服务器、数据库只能被办公域的应用入口访问不能反向管理域堡垒机、监控、自动化平台可到生产域但不能被办公域直接访问隔离域测试环境、外包接入、无线访客默认全部阻断逐条放通四个域之间的策略只允许从高信任到低信任和从办公到生产的具体端口其他一律拒绝。有个判据很好用办公域能不能直接连生产域的数据库。能连说明分段只是名义上的。微隔离东西向防火墙确实比网段分段更细但它不是起步方案。原因有两个一是要装 agent、要梳理业务关系周期长二是业务关系梳理不清就上微隔离结果一定是全放通等于白做。所以顺序是先网段分段 端口收敛两周能做跑顺了再考虑微隔离。五、东西向流量你的设备看不见南北向进出互联网有防火墙、IPS、WAF 在看东西向内网机器之间通常只有一个交换机什么也看不见。这是内网检测最大的盲区。补的办法有两个层次第一层用现有设备做。核心交换机的 NetFlow/sFlow 数据接到现有的日志平台或 SIEM 里至少能看到哪两台机器在异常通信。关键检测点现象说明什么一台终端向大量内网 IP 的 445 发起连接勒索/蠕虫横向扫描一台服务器向多台机器的 22/3389 发起连接凭据爆破或横向尝试内网出现 SMB、RDP 之外的异常协议隧道工具DNS/ICMP/HTTP 隧道内网机器访问非常规端口的外网地址C2 回连同一账号在短时间内从多台机器登录凭据被盗第二层端点侧补。EDR 能看到的比流量更多进程的父子关系、命令行参数、凭据访问行为。横向移动在端点侧留下的痕迹很明确——mimikatz、procdump抓 lsass、net use批量连、psexec落地服务。检测规则不难写关键是先有日志。如果 EDR 只装了办公终端、服务器一台没装那服务器之间的横向你永远看不见。还有一个更常见的问题日志有了但没人在看。东西向告警的量通常远大于南北向——内网机器之间正常通信本身就多稍微放宽阈值就是每天几千条。结果是要么关掉要么设成只记录等于没开。处理办法是只对高价值目标开东西向检测核心数据库、域控、堡垒机这三类机器周围的流量全查其他区域只做统计不告警。范围小了量级就降到人能处理的水平。等这三类的规则跑稳、误报压下去再逐步扩范围。这个节奏比全网上线然后被迫关掉要慢但能活下来。六、几台机器、两周能做的事不用等预算下面四件事现在就能做按性价比排序第一查本地管理员密码是否统一半天。抽样 10 台机器比对如果统一这周就排期改。第二终端之间断 445一次变更。在终端防火墙策略或接入层 ACL 上做能挡住一大类勒索扩散。第三远程管理端口收敛到跳板两周需要协调。这一步会有阻力先做服务器侧终端侧后做。第四把核心交换机的流量数据接进日志平台一周。哪怕只做 Top 会话统计也比完全看不见强。四件事做完内网的安全水位会有明显变化。它们的共同特点是不依赖任何新产品采购。它们还有一个共同特点做完能拿出证据。密码是否还统一、445 是否通、RDP 是否只剩跳板这三件事都能当场验证不靠汇报。七、域环境特有的三条捷径上面讲的是不分域也能走的路。如果内网是 AD 域环境还有三条更省事的捷径——它们不需要猜密码也不需要开放端口靠的是域本身的机制。第一条Kerberoasting。任何域用户都能向域控请求服务票据TGS而票据是用服务账号的口令 hash 加密的。拿到票据后离线暴力破解就能得到服务账号的明文口令。而服务账号往往权限很高——很多单位直接拿域管理员跑服务。检测方法域控上开 4769 事件审核看有没有同一账号在短时间内请求大量不同 SPN 的票据。防御上则是服务账号口令必须足够长25 位以上长到无法在合理时间内破解或者改用组托管服务账号gMSA让口令自动轮换。第二条非约束委派。如果某台机器配置了非约束委派攻击者只要能让域管理员访问这台机器哪怕只是访问它的一个共享就能拿到域管理员的票据进而冒充。检测是一条命令的事用Get-ADComputer和Get-ADUser分别查TrustedForDelegation为$true的对象把清单拉出来。如果输出有内容就要逐个评估这台机器为什么需要非约束委派能不能改成约束委派或基于资源的约束委派多数情况下答案是历史遗留其实不需要。第三条GPO 与 SYSVOL。组策略文件放在域控的 SYSVOL 共享里任何域用户都能读。如果有人把脚本、配置文件里的口令放进了 GPO等于对全公司公开。自查方法在 SYSVOL 的 scripts 目录里搜password、passwd、pwd、secret这类关键字看有没有明文口令。这个动作只读不写在授权范围内做。这三条的共同点是它们是域的设计特性不是漏洞。所以你没法打补丁只能靠两件事——配置收敛长口令、改委派、清 GPO 里的凭据和检测4769 异常、委派对象清单定期核。顺便说一句很多团队把内网安全的希望全押在买一套东西向检测设备上但上面这三条里第一条和第二条的修复成本几乎为零只需要有人去查一遍。先做这些不需要花钱的事再谈采购。八、检测规则示例有了日志之后几条规则能覆盖大部分横向行为。下面用通用伪代码写具体语法按你的平台改-- 规则一单台主机在 5 分钟内连接超过 20 个不同内网 IP 的 445 端口 SELECT src_ip, COUNT(DISTINCT dst_ip) AS targets FROM netflow WHERE dst_port 445 AND dst_ip LIKE 10.% AND ts NOW() - INTERVAL 5 minutes GROUP BY src_ip HAVING COUNT(DISTINCT dst_ip) 20; -- 规则二同一账号在 10 分钟内从 3 台以上不同主机登录成功 SELECT user_name, COUNT(DISTINCT host) AS hosts FROM auth_log WHERE result success AND ts NOW() - INTERVAL 10 minutes GROUP BY user_name HAVING COUNT(DISTINCT host) 3; -- 规则三非运维网段的主机向服务器发起 RDP 连接 SELECT src_ip, dst_ip FROM netflow WHERE dst_port 3389 AND src_ip NOT LIKE 10.10.5.% -- 跳板机网段 AND dst_ip LIKE 10.20.%; -- 生产网段规则三是最该先上的一条。它的逻辑很硬除了跳板机谁都不该直接连服务器的 RDP。一旦有连接要么是运维绕行要么是攻击者在横向——两种都值得立即查。九、三个月能推到什么程度阶段时间做什么判断标准一期第 1 月本地管理员改一机一密、终端断 445抽样验证 hash 不重复终端互连 445 不通二期第 2 月远程管理端口收敛到跳板、四条检测规则上线从终端连服务器 3389/22 不通规则能出告警三期第 3 月四域分段落地、核心交换机流量接入办公域不能直连生产域数据库东西向有数据三期做完不要急着上微隔离。先用三个月数据看清哪些机器在互相通信这份业务关系图是微隔离能不能做成的前提——没有它微隔离上线当天就得全放通。十、几个想清楚再动手的问题第一收敛端口一定会有人反对。反对的理由通常是影响效率。应对办法不是讲安全是给替代方案跳板机上加个快捷方式、堡垒机配好单点登录让走正规通道不比直连慢。只堵不给路一定被绕过。第二本地管理员改一机一密之后运维会抱怨记不住。这是必须提前解决的上密码管理系统或者用 LAPS 让系统代管。不然三个月后一定会有人把口令写回便利贴。第三检测规则先少后多。一上来写二十条规则结果是每天几百条告警没人看。先上三条最硬的非跳板 RDP、批量 445、账号多地登录跑稳了再加。第四别把内网安全做成又一个买设备的项目。上面这些事里只有流量采集可能需要一点投入其余都是配置和流程。内网安全的差距八成不在设备在于有没有人真的按这个顺序做过一遍。