发布于10月10日10月10日 背景最近几周,多家安全厂商和 CERT 通报了边界设备、VPN 网关、文件传输系统被集中扫描和利用的情况。实际应急里比较常见的链路是:攻击者先拿到边界系统入口,再通过弱口令、历史凭据、共享目录或域内服务账号进入内网。这类事件不适合只看 CVE 编号。对防守方更有价值的是确认三件事:入口是否被利用、是否产生内网横向、是否存在权限边界失效。下面内容基于授权渗透测试和蓝队排查场景整理,重点放在日志留痕、验证方法和修复动作。以下操作仅适用于已授权的企业自查、应急响应或渗透测试环境。不要在未授权目标上进行扫描、登录尝试或漏洞验证。问题定位这类新闻动态里的攻击活动通常有几个共同特征:边界设备出现异常登录、异常 Web 请求或非常规管理接口访问。内网中出现来自边界设备网段的 SMB、WinRM、RDP、LDAP、Kerberos 访问。域控日志中出现异常的账号枚举、服务票据请求、远程登录行为。终端上出现计划任务、临时服务、远程执行工具痕迹。排查时建议按时间线走,不要一上来只查终端。入口设备、身份认证日志和域控日志需要一起看,否则容易漏掉从 VPN 会话到内网主机的跳转过程。技术分析一个常见的授权测试复盘链路如下:攻击面:SSL VPN、网关管理后台、文件传输系统或暴露的运维平台。初始访问:利用漏洞读取配置、窃取会话、弱口令登录或复用泄露凭据。凭据扩展:从配置文件、脚本、浏览器缓存、共享盘中获取账号密码。横向移动:使用 SMB、WinRM、RDP、PsExec 类远程服务执行命令。权限提升:利用本地管理员复用、过度授权服务账号或域内委派配置不当。持久化:创建计划任务、服务、WebShell、VPN 账号或新增管理员。从日志角度看,重点不是单个事件,而是事件之间的关联。例如:同一源 IP 先访问 VPN,再触发域账号成功登录,随后该账号在短时间内访问多台服务器的 ADMIN$ 或 C$,这就需要重点复核。操作步骤建议按下面顺序做授权排查:1. 固定时间窗口:以通报漏洞披露时间、异常流量时间、首次告警时间为基准,向前后扩展 72 小时。2. 核对边界访问:检查 VPN、WAF、反向代理、网关设备的登录日志、管理日志、异常 URI。3. 关联身份认证:查看 AD、LDAP、Radius、堡垒机的认证记录,重点关注非常用地点、非常用时间、失败后成功。4. 检查横向行为:在 Windows 域环境中关注 4624、4625、4672、4688、4697、4698、7045、4768、4769、4771 等事件。5. 复核高权限账号:排查 Domain Admins、Enterprise Admins、本地 Administrators、VPN 管理员、运维服务账号。6. 做最小化验证:仅验证是否存在风险和影响范围,不做破坏性操作,不进行持久化测试。代码/命令示例下面是 Windows 域环境中常用的本地日志快速筛选命令,用于排查最近 3 天内远程登录、特权登录、服务创建和计划任务创建痕迹。适合在已授权主机或集中日志节点上执行。REM 查询最近 3 天内常见横向移动相关安全事件 wevtutil qe Security /q:\"*[System[(EventID=4624 or EventID=4672 or EventID=4688 or EventID=4697 or EventID=4698) and TimeCreated[timediff(@SystemTime) <= 259200000]]]\" /f:text /c:200 REM 查询服务创建记录,常见于远程执行或落地持久化 wevtutil qe System /q:\"*[System[(EventID=7045) and TimeCreated[timediff(@SystemTime) <= 259200000]]]\" /f:text /c:100 REM PowerShell 过滤远程登录类型,重点关注 LogonType 3、10 Get-WinEvent -FilterHashtable @{ LogName='Security'; Id=4624; StartTime=(Get-Date).AddDays(-3) } | Where-Object { $_.Properties[8].Value -in 3,10 } | Select-Object TimeCreated, Id, ProviderName, Message | Format-List REM 查看本机管理员组是否被异常加入账号 net localgroup administrators REM 查看计划任务中最近创建或可疑任务 schtasks /query /fo LIST /v如果有集中日志平台,可以把重点字段抽出来做关联。下面是一个偏通用的检索思路,按实际平台字段名调整即可:event_id IN (4624,4672,4688,4698,7045,4768,4769) AND timestamp > now() - 3d AND ( logon_type IN (3,10) OR process_name IN ('cmd.exe','powershell.exe','wmic.exe','psexesvc.exe','rundll32.exe') OR service_name IS NOT NULL ) GROUP BY src_ip, user, host ORDER BY count DESC关键日志点日志来源重点事件排查意义VPN / 网关登录成功、登录失败、配置导出、管理接口访问确认初始入口和账号来源域控 Security4768、4769、4771、4624、4625确认 Kerberos 认证、服务票据请求和异常登录Windows 终端4688、4697、4698、7045确认进程执行、服务创建、计划任务创建文件服务器共享访问、失败访问、批量读取确认数据访问范围和凭据扩散路径EDR / 主机审计远程命令、脚本执行、可疑父子进程确认横向移动和落地执行行为风险与修复建议边界设备:及时升级补丁,关闭公网管理口,管理入口限制到堡垒机或固定运维 IP。账号安全:对 VPN、域账号、运维账号做统一口令重置,尤其是边界设备中保存过的账号。多因素认证:VPN、堡垒机、邮件、云控制台必须启用 MFA,避免单凭密码进入内网。权限边界:服务账号不要加入 Domain Admins,本地管理员密码建议使用 LAPS 或同类方案随机化。横向限制:普通办公网段禁止直接访问服务器的 SMB、RDP、WinRM,仅允许经过堡垒机或跳板机。日志留存:域控、安全设备、VPN、EDR 日志至少保留 180 天,关键日志集中存储,避免被本机清除后无法追溯。检测规则:为非常用时间登录、短时间多主机登录、服务创建、计划任务创建、异常 PowerShell 增加告警。总结这类新闻动态背后真正需要关注的是攻击链是否已经进入内网。边界漏洞本身只是入口,后续的凭据复用、横向移动和权限边界失效才是造成扩大影响的关键。建议企业在看到相关通报后,不要只做版本升级。更稳妥的做法是同步完成入口日志复核、账号重置、横向痕迹排查和权限收敛。这样才能判断事件是“存在风险”还是“已经被利用”。 服务器、云资产与权限边界梳理示意
10月10日10月10日 边界设备被打穿后,别只看设备本身的 WebShell/异常账号,内网横向痕迹更关键。建议按“边界设备 → 认证系统 → 管理网段 → 业务主机”这条线做授权排查。 几个比较实用的排查点: 1. **先查边界设备是否被当作跳板** - VPN/防火墙/网关的登录日志,重点看异常源 IP、非工作时间登录、登录后访问内网管理端口的流量。 - 如果设备支持导出连接日志,重点筛: - 3389/RDP - 445/SMB - 5985/5986/WinRM - 22/SSH - 1433/3306/6379 等数据库和中间件端口 可以在核心交换、防火墙或流量平台上按边界设备内网 IP 做回溯: src_ip == 边界设备内网IP and dst_port in (22,3389,445,5985,5986,1433,3306,6379,9200) 2. **Windows 域环境重点看横向登录事件** 域控和被访问主机上建议重点筛这些事件: 4624 登录成功 4625 登录失败 4672 特权登录 4648 使用显式凭据登录 4768/4769 Kerberos 认证 4776 NTLM 认证 7045 新服务创建 4697 服务安装 4688 进程创建 1102 日志被清除 尤其要关注 `LogonType`: - `3`:网络登录,常见于 SMB/远程命令执行 - `10`:RDP - `9`:RunAs / 凭据复用 - `7`:解锁,结合时间线判断是否异常 PowerShell 快速拉取 7045 服务创建事件: Get-WinEvent -FilterHashtable @{ LogName='System'; Id=7045; StartTime=(Get-Date).AddDays(-14) } | Select-Object TimeCreated,ProviderName,Id,Message 拉取登录成功事件并筛选横向登录: Get-WinEvent -FilterHashtable @{ LogName='Security'; Id=4624; StartTime=(Get-Date).AddDays(-14) } | Where-Object { $_.Properties[8].Value -in 3,9,10 } | Select-Object TimeCreated,Id,Message 3. **检查是否有远程执行工具痕迹** 常见的横向工具会留下比较明显的系统痕迹,例如: - `psexesvc` - `wmic` - `winrm` - `schtasks` - `sc.exe` - 可疑服务名、随机服务名 - ADMIN$、C$ 访问痕迹 可以查服务和计划任务: Get-Service | Where-Object { $_.Name -match "psex|svc|update|admin|wins|temp" } schtasks /query /fo LIST /v 同时检查管理共享访问是否异常: net share net session net use 4. **排查凭据泄露和复用** 边界设备如果保存过 LDAP、Radius、AD、堡垒机、SNMP、API Token 等凭据,要默认视为已泄露。修复时不建议只改边界设备密码,相关联账号都要轮换。 建议优先处理: - VPN 管理员账号 - LDAP/RADIUS 绑定账号 - 防火墙到日志平台/API 平台的 Token - 运维跳板机账号 - 域管理员、服务器本地管理员密码 - SNMP Community - SSH Key 域内可以检查最近高权限组变更: Get-ADGroupMember "Domain Admins" Get-ADGroupMember "Enterprise Admins" Get-ADGroupMember "Administrators" 也可以查 4728、4732、4756 等组成员变更事件。 5. **Linux 主机看 SSH 和持久化** 如果边界设备能访问 Linux 管理网段,重点查 SSH 登录、authorized_keys、定时任务、systemd 服务。 last -a lastb -a grep -Ei "Accepted|Failed|Invalid|session opened" /var/log/auth.log grep -Ei "Accepted|Failed|Invalid|session opened" /var/log/secure 检查可疑持久化: cat /etc/crontab ls -la /etc/cron.* crontab -l find /etc/systemd/system -type f -mtime -30 find /home /root -name authorized_keys -type f -exec ls -la {} \; 6. **修复顺序建议** 这里顺序很重要,不然容易“边修边被打”: 1. 临时隔离疑似失陷边界设备,至少限制其访问内网管理网段。 2. 保存日志和配置备份,先取证再重装/升级。 3. 升级边界设备固件,确认补丁版本。 4. 重置所有关联凭据和 Token。 5. 清理内网横向产生的服务、计划任务、WebShell、SSH Key。 6. 收紧边界设备到内网的访问策略,只放必要地址和端口。 7. 开启管理面 MFA,管理口仅允许堡垒机或固定运维网段访问。 8. 对历史日志做至少 14~30 天回溯,别只看当天。 7. **策略加固可以落到配置层面** 防火墙策略上建议避免边界设备直接访问全内网,尤其是管理端口。可以按白名单控制,例如: 边界设备管理地址 -> 堡垒机:22/3389 allow 边界设备管理地址 -> 日志平台:514/6514 allow 边界设备管理地址 -> AD/LDAP:389/636 allow 边界设备管理地址 -> 其他内网网段:any deny 如果这次是集中利用后的应急,个人建议把“边界设备内网 IP 发起的连接”作为第一条主线去查,通常能比较快还原横向路径。很多时候攻击者不是在边界设备上停留,而是拿它做入口后马上打域控、堡垒机、运维机。