版本 macOS Linux Sensor

在局域网中部署的专用传感器节点「RoamSwitch Sensor」

RoamSwitch Sensor 是部署在局域网内的专用节点,从外部审计同一局域网上的 RoamSwitch 终端(Mac / Linux Client / Server Edition)。会确认「从同一局域网的其他设备看过来是什么样子」(开放端口、无需认证即可访问的服务、横向移动的立足点),这是主机自我诊断在原理上无法看到的。同时还提供局域网设备台账与 ARP 欺骗检测。

RoamSwitch Sensor: a dedicated LAN sensor node with ARP sweep and passive ARP monitoring, IoT risk classification, active vulnerability audit of paired RoamSwitch endpoints, and pairing-code (Ed25519, fixed IP) pairing

🛡️ 主动漏洞审计(仅针对已配对端点)

由全端口扫描 → 已知特征检测(Redis/dockerd/Memcached/MongoDB/Elasticsearch/CouchDB/Jenkins/VNC 未授权暴露、SMBv1 与未强制 SMB 签名、RDP 未强制 NLA、SMTP 开放中继等)→ 通用 Banner 获取 → nmap NSE 补充扫描共 4 个阶段构成,全程不含任何破坏性操作。

📋 掌握网络构成(主动 ARP 扫描)

通过 ARP 扫描找出局域网内的设备。将 IP、MAC、主机名、厂商、在线状态、首次/最近发现时间和 IP 历史整理成设备清单,并可为每台设备自由填写名称、用途等备注。没有备注的设备会被标为“需确认”,可用于与资产清单核对。未安装 nmap 时,会退回到只显示 Sensor 自己通信过的设备的被动模式。

👁️ ARP 事件与“下一步操作”

新设备出现,以及已知 IP 对应的 MAC 变化(ARP 欺骗的迹象),会连同发生时间、严重程度(严重~信息)、判断依据、相关设备的身份和具体的核实步骤一并给出。网关 IP 的 MAC 变化被视为“严重”。启用可选的被动抓包后,还能检测单台设备对大量 IP 发送 ARP 请求(内网侦察)。

🔎 掌握局域网内其他设备与可疑行为(仅检测)

以参考信息的形式给出:MAC 厂商与设备类别、依据 mDNS/SSDP/DHCP 自我通告的型号识别、连接已知恶意 IP 或管理端口、僵尸网络/DDoS 参与迹象(连接大量目的地)、DNS 隧道/C2 迹象。多数功能需要启用可选的被动抓包配置(如镜像端口),且 Sensor 不会阻断任何流量。

🔑 配对码方式(Ed25519、固定 IP、证书固定)

初始状态下不信任任何对象。端点侧输入由 Sensor 操作员发放、有效期 10 分钟的一次性配对码,并同时输入 Sensor 的固定 IP 地址以及 Sensor 屏幕上显示的证书指纹,即可一次操作建立双向信任。公钥会自动交换,无需事先获知。无需云端注册,也无需创建账户。

🔐 控制 API 防护(TLS 1.3、证书固定、防重放)

与端点之间的控制通信(TCP 50543)通过 TLS 1.3 接受(control.tls: off / optional(默认)/ required)。证书为自签名,信任由端点侧固定(pin)Sensor 屏幕上显示的指纹来决定,不会通过网络自动获取。审计请求的签名采用带时间戳和 nonce 的 v2 格式,可拒绝重放;配对码暴力破解以及签名失败会按来源 IP 进行锁定。是否接受旧格式(v1)签名以及监听 IP 也可以配置。

🖥️ 可操作全部功能的 10 语言 TUI

交互式 TUI 可用 10 种语言操作 CLI 的所有子命令、守护进程 IPC、所有配置键(配置编辑器、TLS 状态与证书重新生成、手动配对、通知测试)、收集器运维,以及所有事件界面(包括被动监控、IoT 行为、可疑通信、漏洞信息)。CLI 支持日语和英语。审计报告和导出也可以用 10 种语言输出。

📅 定期审计与差异对比(可选启用)

按计划自动审计所有已配对的端点,并显示与上一次审计相比的变化——新增发现、已解决项和新开放的端口。若之前开放的端口全部看不到了,将按“疑似不可达”处理,而不是“已解决”。即使无人值守,Sensor 也会在每次审计前后确认端点仍是其认证时的 MAC 地址;若该 IP 已属于其他设备,则不进行审计。默认关闭,可设置执行间隔和允许执行的时间段。

📣 通知与审计证据(可选启用)

回归、新设备、ARP 欺骗等事件可通过 Webhook(Slack、Discord、Teams 等)和 syslog(RFC 5424)发出通知。配对、解除配对、审计、配置变更会连同执行者一起记录到带防篡改检测的操作日志(哈希链)中,审计结果、设备台账和操作日志可导出为 CSV、JSON、HTML 报告(可在浏览器中另存为 PDF)。通知的发送目的地全部由运维人员自行设置,默认不会发送设备信息,也不会发送审计结果。检测用数据(CVE 映射和 nmap NSE 数据库)每天从更新服务获取,但可通过 updates.fetch_cve_map 停止,且此通信不包含设备和审计数据。

🗂️ 汇总多个 Sensor(中央收集器,可选启用)

面向在多个站点部署 Sensor 的组织,内置了汇总签名摘要的中央收集器(默认禁用)。提供按站点查看状况的仪表板和 CSV 导出,并可检测 Sensor 端审计日志的截断与回滚。未安装 RoamSwitch 的设备(非受管设备)可分类为「未配对的 RoamSwitch 主机」或「未知设备」并纳入摘要(collector.send_unmanaged_devices。不包含通信内容)。仅接受已登记 Sensor 的签名请求,且不能在没有 TLS 的情况下向局域网外公开。

🚨 非法 DHCP 服务器与 IPv6 路由器检测(仅检测)

每小时用随机 MAC 发送一个 DHCP(IPv6 为 DHCPv6)探测包,统计所有应答的服务器(不会租用 IP 地址)。会通知后来新增的服务器、分发与合法服务器不同的网关或 DNS 的服务器、由 IPv4 网关以外的设备发出的 IPv6 路由器通告、IPv6 地址持有者的变更(NDP 欺骗),以及仅在 IPv6 下可见的设备。设备台账也支持 IPv6 地址。Sensor 不会阻断任何流量。

🔎 未部署 RoamSwitch 设备的轻量审计(可选启用,仅连接检查)

对于未配对的打印机、摄像头、NAS 等设备,仅在运维人员授权的范围内,对固定的端口做连接检查并读取服务主动发出的信息。不会尝试登录或利用漏洞;OpenVAS 之类的深度扫描只对已同意(已配对)的终端进行。启用前必须先设置批准人记录和目标范围,且每次执行都会把授权记录写入审计日志。

🔒 丢失、被盗或报废时的吊销与锁定

在收集器中吊销后,该 Sensor 会在下次上传时自行停止,停止配对、审计、上传和通知(重启后依然保持停止)。还可以设置为清除密钥和存储的数据、在长期无法连接收集器时自动停止,也提供用于报废的命令。同时会显示曾与其配对的终端列表和解除配对的方法。

如需对 Sensor 自身进行攻击防护,建议在同一台机器上另行安装 RoamSwitch for Linux 的 Server Edition,两者可作为完全独立的进程共存。

审计报告输出示例

这是通过 roamswitch-sensor export all --format html(TUI 中为 e 键)导出的报告示例。它是单个 HTML 文件,用浏览器打开后选择“另存为 PDF”即可得到可提交给审计人员的 PDF。

所展示的机器名、MAC 地址、IP 地址和公钥均为虚构。报告正文可用显示语言(10 种语言)输出,此处展示的是日语版和英语版示例(非日语显示时展示英语版)。

查看完整的动作确认指南 →