发布于13小时前13小时 背景近期多份国际威胁情报持续指向同一条攻击链:攻击者不再只依赖口令喷洒,而是优先收集 VPN、反向代理和防火墙管理面的会话令牌、配置备份及浏览器缓存,随后利用合法会话进入内网。此类活动的难点在于,认证日志可能显示为成功登录,传统的失败次数告警不一定触发。本文限定在已获授权的渗透测试与事件排查场景,重点验证三件事:会话是否与设备或来源绑定、边界身份能访问哪些内网资源、现有日志能否还原从外部接入到权限提升的完整链路。不要在生产环境直接复用真实令牌;建议由管理员创建短时测试账号,并设置明确的源地址、时间窗口和回滚方案。问题定位:先区分账号失陷与令牌失陷如果同一账号没有明显的认证失败,却在短时间内出现新的源地址、自治系统、User-Agent 或设备指纹,应优先检查会话复用。排查时不要只看 VPN 登录成功事件,还要把身份提供方、边界网关、DNS、代理、EDR 和域控日志按统一时区关联。观察点可疑特征验证方向身份提供方无交互认证记录,但应用侧出现新会话检查令牌签发时间、刷新记录与会话撤销状态VPN/网关同一会话短时跨地区或跨 ASN核对源 IP、设备证书、客户端版本和并发会话内网 DNS接入后集中查询域控、文件服务、虚拟化平台关联终端进程与 DNS 查询Windows4624 后紧跟 4672、7045 或异常远程管理核对登录类型、源工作站、服务创建者技术分析:授权测试应验证的权限边界测试目标不是证明“能登录”,而是确认登录后的实际授权面。边界账号通常应被限制到指定网段和应用;如果接入后可以解析管理域名、访问域控端口或连接运维接口,就说明网络分段或访问控制存在缺口。会话控制:令牌寿命、刷新令牌轮换、注销后是否立即失效、是否绑定设备证书或受管终端。网络边界:VPN 地址池到服务器区、管理区、备份区的 ACL 是否遵循默认拒绝。身份边界:普通远程接入账号是否被嵌套进高权限组,是否拥有远程服务登录权。审计边界:是否记录原始源地址、会话 ID、设备标识、策略命中结果和管理员变更。验证令牌撤销时,应由管理员签发专用测试会话,记录会话 ID 后执行注销、改密或全局撤销,再观察旧会话是否仍可访问低风险测试页面。不要复制真实用户 Cookie,也不要绕过多因素认证。操作步骤:建立可复核的调查时间线第一步,确定事件窗口,并将所有日志转换为 UTC 或统一的本地时区。第二步,以账号、源 IP、VPN 分配地址和会话 ID 为键做关联。第三步,从边界登录向后检查 DNS 查询、SMB/RDP/WinRM 连接、特权登录和服务创建。第四步,对授权测试账号执行会话撤销验证,并保留网关策略命中记录。以下命令用于 Windows 日志离线排查。请在取证副本或日志平台导出的 EVTX 上执行,避免直接改变受调查主机。示例筛选成功登录、特殊权限分配和服务安装事件,并输出便于关联的时间、主机和事件 ID。$start = (Get-Date).AddDays(-3) $ids = 4624, 4672, 7045 Get-WinEvent -FilterHashtable @{ LogName = 'Security','System' Id = $ids StartTime = $start } -ErrorAction SilentlyContinue | Select-Object TimeCreated, MachineName, Id, ProviderName, Message | Sort-Object TimeCreated | Export-Csv .\boundary_timeline.csv -NoTypeInformation -Encoding UTF8 # Linux/VPN 网关:围绕测试账号和分配地址检索,不修改原始日志 journalctl --since '2025-01-01 00:00:00' --until '2025-01-01 04:00:00' \ | grep -Ei 'test-vpn-user|10\.20\.30\.45|session|token' # 从防火墙导出的文本日志中统计测试地址访问的目的端口 awk '$0 ~ /10\.20\.30\.45/ {print $NF}' firewall-export.log | sort | uniq -c | sort -nrWindows 事件 4624 需要重点查看 LogonType:3 常见于网络登录,10 常见于远程交互登录;4672 表示为新登录分配了敏感权限,但不能单独作为入侵结论;7045 表示系统安装了服务,需要继续核对服务路径、签名和变更单。若日志由 SIEM 收集,还应保留原始事件 XML,避免字段归一化丢失 IpAddress、WorkstationName 或 SubjectLogonId。配置核查:避免“认证通过即全网可达”远程接入地址池应单独分区,并按应用白名单放行。下面是策略逻辑示例,实际语法需按设备厂商调整。关键是先允许到指定业务代理和 DNS/NTP,再显式拒绝管理网与服务器网,同时记录拒绝日志。# 伪配置:仅表达最小权限策略顺序 allow src=vpn_pool dst=app_proxy service=https log=yes allow src=vpn_pool dst=internal_dns service=dns log=yes allow src=vpn_pool dst=ntp_service service=ntp log=yes deny src=vpn_pool dst=management_vlan service=any log=yes deny src=vpn_pool dst=server_vlan service=any log=yes deny src=vpn_pool dst=any service=any log=yes验证 ACL 时,只对预先批准的测试地址和端口进行连接测试。结果应同时包含客户端现象与防火墙命中日志:仅记录“连接失败”无法区分 ACL 拒绝、路由缺失和服务未监听。风险判断与修复建议立即处置:撤销受影响账号的全部会话和刷新令牌,而不是只修改密码;轮换可能存放在网关配置、脚本或浏览器中的密钥。会话加固:缩短高风险应用会话寿命,启用刷新令牌轮换、重放检测、设备合规校验和高风险登录二次认证。网络收敛:将 VPN 地址池视为不可信区域,禁止其直接访问域控、虚拟化、备份和安全管理平台。身份治理:清理嵌套组和历史授权;远程接入账号与运维账号分离,高权限操作使用独立的受管工作站。日志留痕:网关至少保留账号、真实源 IP、分配地址、会话 ID、设备标识、策略结果与上下线时间;身份平台保留签发、刷新、撤销和风险判定记录。检测规则:对同会话跨 ASN、短时跨地域、注销后继续访问、VPN 接入后探测管理端口等行为建立关联告警。复测标准修复完成后,应使用新的专用测试账号复测:未受管设备无法建立高权限会话;注销或全局撤销后旧会话立即失效;VPN 地址只能访问批准应用;访问管理网的请求被明确拒绝并产生可检索日志;SIEM 能以会话 ID 或分配地址串联身份、网关与终端事件。复测报告需记录策略版本、测试时间、源地址和预期结果,避免仅凭截图判定修复完成。总结近期边界攻击的变化不只是“绕过密码”,而是利用合法会话降低异常认证特征,再从过宽的网络与身份权限进入内网。防守侧应把令牌生命周期、远程接入分段和跨系统日志关联作为同一条控制链检查。授权测试也应围绕可撤销、可限制、可审计三个结果展开,而不是停留在单点登录成功。 服务器、云资产与权限边界梳理示意 安全动态、影响面和处置建议示意
12小时前12小时 这类事件排查时,建议先把“账号登录成功”和“现有会话被重放”分开看。边界设备的会话令牌被盗后,攻击者通常不会再次触发 MFA,单看认证成功/失败日志很容易漏掉。优先关联同一 session ID、cookie 哈希或 refresh token 在短时间内跨 ASN、跨国家、跨 User-Agent 使用的情况,同时检查令牌签发时间是否早于密码重置或账号禁用时间。 处置上不要只改密码,应先吊销服务端全部会话和 API token,再轮换设备上的签名密钥、集群共享密钥及与 LDAP/RADIUS、云平台对接的服务账号凭据。若产品不支持按用户撤销会话,维护窗口内重启认证服务通常只能作为临时手段;关键是确认旧令牌在节点切换、HA 同步和备节点上也已失效。 日志可以按下面几组线索做时间线: 边界设备:会话创建、刷新、源 IP 变化、管理面/API 调用、配置导出。 身份侧:无交互式登录但持续出现资源访问,或 MFA 记录缺失。 内网侧:令牌首次异常使用后,对 SMB、WinRM、RDP、LDAP、vCenter 等管理入口的连接。 终端侧:浏览器 cookie 数据库、设备配置备份、崩溃转储或日志包被读取、打包和外传。 Windows 环境可先围绕异常源地址和时间窗口快速筛选横移事件: Get-WinEvent -FilterHashtable @{ LogName='Security' Id=4624,4625,4648,4672,4768,4769,4776 StartTime=(Get-Date).AddDays(-7) } | Where-Object { $_.Message -match '10\.20\.30\.40|TargetUserName' } | Select-Object TimeCreated, Id, MachineName, Message # PowerShell 远程与脚本执行痕迹 Get-WinEvent -FilterHashtable @{ LogName='Microsoft-Windows-PowerShell/Operational' Id=4103,4104 StartTime=(Get-Date).AddDays(-7) } 网络侧建议检索“边界设备管理地址主动访问内网”的流量,因为正常情况下它往往不应发起 SMB、WinRM 或 LDAP 连接: index=network earliest=-7d src_ip IN (边界设备管理IP列表) dest_port IN (445,3389,5985,5986,389,636,88) | stats count min(_time) as first max(_time) as last values(dest_ip) values(dest_port) by src_ip 如果攻击者是从 VPN 地址池进入内网,则应把 VPN 会话 ID、分配地址、真实源 IP、账号和终端标识保存成一张映射表,再与 DC、EDR 和东西向流量日志关联;只按 VPN 池 IP 查,会把多名用户的活动混在一起。还要保留设备配置、审计日志和内存/磁盘镜像,避免升级或重启后覆盖关键证据。 加固方面,管理面应与业务面隔离并限制到堡垒机网段;会话 cookie 设置 Secure、HttpOnly、合理的 SameSite 和短有效期;高风险操作要求重新认证,不能仅凭已有会话完成。最后可做一次验证:吊销令牌后,在备节点、旧浏览器和 API 客户端分别重放旧令牌,确认均返回 401/重新认证,而不是仅在主节点失效。