只读的 N-able N-central CVE-2026-18556/CVE-2026-18577 后渗透 IoC 猎手,适用于 Windows 端点。
只读防御性狩猎工具包,用于排查与 N-able N-central 身份验证绕过漏洞 CVE-2026-18556 和 CVE-2026-18577 相关的后利用痕迹。该 PowerShell 端点扫描器会标记 N-able 和 Huntress 发布的指标;它从不修复或修改主机。
| 厂商公告 | N-able — N-central 安全更新(2026 年 8 月 4 日) |
| 检测模板 | N-able 开发者配方 — CVE-2026-18577 检测 |
| 独立研究 | Huntress — 严重的 N-able N-central 漏洞与主动利用 |
| 不受影响的版本 | N-central 2026.3.1.7 |
| 平台 | Windows PowerShell 5.1+(提升权限) |
若干已公布的攻击者 IP 是商业 VPN 出口节点(NordVPN / Mullvad)。仅凭 IP 匹配并不能证明已遭入侵——请结合 Take Control 会话时间、查看者身份、工单历史以及端点持久化痕迹进行关联分析。
在受管理的 Windows 端点上运行提升权限的 PowerShell 会话:
Set-ExecutionPolicy -Scope Process Bypass
.\scripts\Hunt-NcentralCompromise.ps1
更短的回溯窗口和 CSV 导出:
.\scripts\Hunt-NcentralCompromise.ps1 -RecentDays 7 -CsvPath .\findings.csv
从 RMM 推送(iocs.json 必须位于 scripts 目录旁边,或传入
-IocFile):
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\Hunt-NcentralCompromise.ps1 -OutputPath C:\Windows\Temp\ncentral-scan.json
完整覆盖需要管理员权限。没有管理员权限时,扫描器会以 2 退出;请传入 -AllowNonElevated 以接受覆盖范围缩减。
| 检查项 | 描述 |
|---|---|
| Cloudflared 服务 | 精确服务名 Cloudflared、调用 cloudflared.exe 的命令行,以及从用户配置文件、ProgramData 或 Temp 启动的隧道式服务 |
| Cloudflared 进程 | 映像/命令行看起来像 Cloudflare Tunnel 的运行中进程 |
| Documents svchost | 本地用户配置文件下的 Documents\svchost.exe(N-able 公开的 pivot) |
| Take Control 日志 | C:\ProgramData\GetSupportService_N-Central\Logs\ 下最近的 BASupSrvc_*.log* / BASupTSHelper_*.log*(递归),完整流式读取——包括滚动生成的 .gz 日志——以查找 IOC IP/域名 |
| 应用程序事件 | 事件 ID 4102、8192 和 8193,包括时间相近的三元组以及提及 MSP Support / 公开 IP 的消息 |
-IocFile PATH alternate IoC JSON (default ..\iocs.json)
-RecentDays N lookback for logs/events (default from IoCs)
-EventCorrelationWindowMinutes N triad clustering window (default 15)
-MaxLogScanBytes N per-log content-scan cap (default 64 MB)
-SkipServices / -SkipLogs / -SkipEvents / -SkipDocuments
-AllowNonElevated continue with reduced coverage when not admin
-OutputPath PATH JSON report path
-CsvPath PATH optional CSV export
-PassThru emit finding objects to the pipeline
Install-Module Pester -MinimumVersion 5.5.0 -Scope CurrentUser -Force -SkipPublisherCheck
.\tests\Invoke-Tests.ps1
该套件为只读操作,无需提权,并且完全针对 TestDrive: 下的合成测试夹具运行。
发现项为 [PSCustomObject] 值,包含 Severity、ArtifactType、Details、Timestamp、Target、ComputerName 和 Evidence。默认会写入一份带时间戳的 JSON 报告。
| 退出码 | 含义 |
|---|---|
0 | 无严重或高危发现项 |
1 | 存在一个或多个严重或高危发现项 |
2 | 扫描器致命错误(IoCs 缺失或格式错误、未提权、意外失败) |
阳性发现项的含义: 观察到了与已公开攻击手法一致的证据,应进行调查。合法的 MSP Take Control 使用和经授权的 cloudflared 安装可能与之重叠——除非与 IOC 基础设施或无法解释的会话相关联,否则应将中危/信息类项目视为背景信息。
iocs.json machine-readable indicators
scripts/Hunt-NcentralCompromise.ps1 Windows endpoint hunter
tests/Hunt-NcentralCompromise.Tests.ps1 Pester 5 suite
tests/Invoke-Tests.ps1 test runner
docs/ncentral-compromise-iocs.md human-readable IoC notes
docs/script-reference.md CLI / schema / exit codes
MIT — 参见 LICENSE。