内网横向扫描需通过分段隔离、主机防火墙策略、禁用发现协议及加密最小化服务来防御。应按业务划分VLAN、配置ACL阻断高危协议、Windows/Linux主机精准封堵同子网入站端口、禁用LLMNR/NetBIOS/SMBv1等协议,并强制HTTPS、绑定IP、启用NLA与密钥认证。

内网横向扫描探测往往不是从外网发起,而是从一台已失陷的内部主机开始。攻击者利用开放端口、弱凭证、未修复漏洞,在同一子网或广播域内快速定位其他主机并尝试突破。单纯靠边界防火墙无法拦截这类行为——它发生在内部,流量不经过网关。真正有效的隔离,必须落在网络结构设计和主机级策略上。
按业务划分网段,切断默认互通
多数企业内网仍采用“一个大子网打天下”的架构,所有办公机、服务器、打印机都在192.168.1.0/24里,交换机一通百通。这等于给攻击者铺好了高速公路。应按最小权限原则拆分:
- 财务、HR等敏感部门单独划为独立VLAN,如172.16.10.0/24,禁止与其他部门二层互通
- 研发测试环境与生产环境物理或逻辑隔离,测试网段禁止访问数据库、核心业务系统IP段
- 打印机、IoT设备等哑终端统一归入低权限网段(如10.100.0.0/24),仅允许出向DNS/NTP,禁止入向任何连接
- 在三层交换机或防火墙上配置ACL,明确拒绝跨网段的SMB(445)、RDP(3389)、WinRM(5985)、NetBIOS(137-139)等高危协议通信
主机级防火墙封堵同子网探测行为
Windows防火墙虽不能拦ARP或LLMNR广播,但对基于IP层的主动扫描(如Nmap -sS、masscan)有强效抑制能力。关键不是“全开”或“全关”,而是精准限制:
- 禁用默认“专用网络”规则组中的“文件和打印机共享”“远程协助”“远程桌面”等入站规则
- 新建入站规则:目标端口为135-139, 445, 3389, 5985, 5986,作用域设为“本地子网”,操作选“阻止”,名称标为“阻断同子网高危服务”
- 对Linux主机,使用iptables/nftables设置类似策略,例如:
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 445 -j DROP - 定期导出规则快照(PowerShell中用
Get-NetFirewallRule | Where-Object {$_.Enabled -eq 'True'} | Export-Clixml),便于对比变更
关闭无防护的发现协议,减少暴露面
很多横向扫描依赖系统自带的“自动发现”机制,这些协议默认开启、无认证、易被滥用:
- 禁用LLMNR和NetBIOS:组策略路径
计算机配置 → 管理模板 → 网络 → LLMNR设为“已禁用”;NetBT服务设为“禁用” - 关闭WS-Discovery(Web Services Dynamic Discovery):PowerShell运行
Set-Service -Name WSDSvc -StartupType Disabled - 停用SMBv1(永恒之蓝元凶):
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol -NoRestart - 禁用IPv6若非必需:避免因IPv6地址自动生成导致意外暴露(尤其在双栈环境下)
加密+最小化服务暴露,让扫描“看得见却拿不到”
即使扫描到端口开放,若协议加密严格、服务精简、凭证复杂,也能大幅提高攻击门槛:
- 所有内部管理接口(如堡垒机、Zabbix、JumpServer)强制HTTPS,启用HSTS,禁用HTTP明文跳转
- 数据库只监听内网特定IP(如MySQL bind-address=10.10.20.10),不绑定0.0.0.0;应用连接走隧道或代理,不直连
- Windows主机启用“网络级别身份验证(NLA)”再开放RDP,杜绝CredSSP中继风险
- 对Linux SSH,禁用密码登录(
PasswordAuthentication no),仅允key认证,并限制可登录用户列表(AllowUsers admin@10.10.20.*)








