Corplink(飞连)+ ESET 终端管控取证报告
日期:2026-09-16 | 主机:Dell OptiPlex 7080 / Ubuntu 22.04.5 | 方法:4 路并行只读取证(策略配置/二进制静态分析/上报通道/16 万行全量日志) + 主会话复核 铁律遵守:全程只读,未修改/停止任何公司软件组件 关联:终端管控与netadmin监控边界分析
0. TL;DR
- 截屏功能设计上存在,但本机从未被启用:全量日志 3013 次状态汇报恒为
enable:0;落盘目录为空;本地缓存参数 = 间隔 4 秒/使能=false - eDLP 三大能力(文件审计/截屏/外设管控)当前全部关闭,文件审计恒
disable dlp,上传管线零产出(0 成功 : 6032 次失败) - ⚠️ 今日变化:09-16 14:44 eDLP 主策略开关由
enable:0翻转为enable:1,且当日下午起主策略拉取加密到每分钟一次——服务端动了配置,子功能仍关,需持续盯 - ESET 侧:eea 杀毒本体从未跑起来(内核模块装不上),管理 agent 活着并把本机判进「问题计算机」组
- 理论能力全集很大(文件审计+OCR+Git push 监控+VPN 全流量+远程脚本+AnyDesk),但无 TLS 中间人证据;当前实际在做的只有遥测(CPU/内存/进程/WiFi/软件清单)与策略拉取
1. 组件架构
corplink-service (root, Go 主服务) ──长连──> fly.mioffice.cn:10443 (10.237.25.5)
├─ fmaster (舰队主控,每 60s 全量拉起子组件)
│ ├─ edlp (isolate/system) → libedlp.so ← DLP 防泄漏
│ ├─ av (isolate/system) → libav.so ← 杀毒(百度引擎)
│ └─ threat_intelligence → .so 缺失,每分钟空转崩溃
├─ edlp_ui (user) → libedlp_ui.so ← 截屏执行器
└─ corplink (Electron UI)
eset: eraagent.service(活) ──gRPC──> new.nod32.mioffice.cn:2222 + EPNS 91.228.167.187:8883(MQTT)
eea.service(从未跑起来,内核模块编译失败:缺 gcc-12)
2. 截屏策略定案(重点)
机制(二进制反汇编级实证,libedlp_ui.so):
- 服务端经 Mojo IPC 下发
ScreenShotCfg{uint32 间隔秒, bool 使能} - 使能后
base::RepeatingTimer按间隔滚动预拍,内存仅保留最近 N 张(screen_shot_limit) - 触发是事件驱动:判定 DLP 泄漏事件时,从滚动缓存挑事件前/当时/后三张落盘(
SaveScreenShotData(before, cur, after)) - 执行:优先 GNOME Shell DBus 截屏 API,回退
corplink-screenshot(gnome-screenshot 3.38 改名版) - 上传:事件 POST
/api/esec/event/edlp→ 响应含预签名 URI → 直传对象存储;保护:磁盘水位检查 + 上限 1000 张
本机实际状态(全量日志 09-12~09-16,约 16.1 万行):
| 证据 | 取值 |
|---|---|
screenshot status enable:X limit:X 汇报 | 3013/3013 次 = enable:0 limit:0,从未翻转 |
本地缓存 data/edlp/back_paks/cfg/screenshot.cfg | 5 字节 04 00 00 00 00 = {间隔 4s, enable=false}(推断,置信度高) |
截屏落盘目录 back_paks/ui/ | 空,零产出 |
| 上传日志 | get upload screen shot file info failed. Database not opened ×3019 |
结论:公司当前的截屏策略 = 不开。即使将来开启,形态也是”按服务端间隔滚动预拍 + 泄漏事件触发三张取证”,间隔由服务端下发(本地缓存参数为 4s 量级)。
3. eDLP 能力全集 vs 本机实际状态
| 能力(libedlp.so 字符串/符号实证) | 采集技术 | 本机状态(日志实证) |
|---|---|---|
| 文件操作全量审计(创建/复制/移动/重命名/下载/压缩解压/剪贴板流转/扫描/加密) | fanotify | ❌ disable dlp 恒成立;/home/ 路径日志命中 0 次 |
| 敏感内容识别(关键字/正则/上下文) | 内嵌 Hyperscan | ❌ 未激活 |
| 文档正文抽取(含压缩包穿透) | libdocument_text + 7z + libmagic(Magdir.mgc) | ❌ 魔数库更新每分钟被取消 |
| OCR 图片文字识别 | ByteNN 推理引擎 + det/rec/orient/chn 模型 | ❌ 模型在盘但从未被加载(ocr/inference 日志命中 0) |
| USB 存储管控(可强制只读重挂载) | udisks2/udev | ❌ DEVICE_CTRL enable:0 ×3177 次 |
| 打印监控 | CUPS 通道 | ❌ 无痕迹 |
| 浏览器上传监控(URL/标签页标题) | 采集点未完全实锤 | ❌ 无痕迹 |
| Git/SVN push 监控(repo/remote_url/commit/push_user) | 内嵌 libgit2 | ❌ 未激活 |
| 全盘敏感数据扫描(Data Discovery) | full_scanner_mgr | ❌ 无痕迹 |
| 阻断(文件外发拦截) | block_channel_processor | ❌ 未激活 |
| 水印 | — | ❌ Linux 端无水印引擎证据(全日志 0 命中) |
上传管线:0 次成功 : 6032 次失败(DB 未打开);上报配额 max report size is 0 = 服务端没给配额。
4. 上报通道实测(Corplink)
服务端 fly.mioffice.cn:10443;每个请求明文带设备身份(品牌/型号/OS/架构)。
| 项目 | 间隔 | 端点/证据 |
|---|---|---|
| CPU/内存/磁盘采集 | 30s | runtime_linux.go Collect runtime stats |
| 运行时上报 | 300s | /api/emgr/v1/device/runtime/report |
| WiFi 周边环境扫描 | 探测 60s / 上报 300s | nmcli 扫周边 AP → /api/v1/wifi/report |
| 进程监控(盯”联软 LAgent”是否在跑) | 300s | Process policy: process_names:[LAgent] |
| 已装软件清单(变化才报) | 1h | /api/emgr/v1/cfg/software/info/report/v2 |
| 安全基线+软件合规(docker-desktop 禁装检测,do_report:true) | 15min | /api/esec/event/baseline、/software/alarm |
| eDLP 主策略拉取 | 180s(09-16 14:41 起加密到 60s) | /api/esec/config/edlp |
| eDLP 外设策略拉取 | ~750s | /api/esec/config/edlp/peripheral |
| 远程控制(AnyDesk)配置 | 周期拉取,当前空 | /api/emgr/remote_control/config |
| 日志回传/崩溃收集 | 事件驱动 | /api/emgr/log_collection、/crash_log |
5. 主服务(corplink-service)其它能力
- VPN 全流量接管:WireGuard + /dev/net/tun + 路由注入 + DnsProxy(当前无 tun,未启用)
- DNS 全量接管:NetworkManager dnsmasq 插件(strict-order,127.0.1.1:53)
- 安全基线自动修复(会改用户系统!):gsettings set 锁屏/睡眠等(GNOME/Deepin/UKUI 全覆盖);读系统代理配置
- 远程运维:远程脚本推送(remote_script_push)、软件远程安装/卸载(
rpm -e --nodeps)、补丁推送 - AnyDesk 远程桌面全生命周期管理(下载/安装/密码/拉起)——当前配置为空,未启用
- 设备指纹:DMI product_uuid + machine-id + TPM 检测
- 硬编码外联域名仅
corplink.volcengine.cn(火山引擎飞连官方产品实锤)
6. ESET 侧
- 服务端
new.nod32.mioffice.cn:2222(gRPC);复制上报每 2h 随机化;升级检查 6h;EPNS 推送 MQTT 长连 - 上报内容含操作系统完整软件安装清单;SendDiagnostics=false
- 应用 17 条策略:EDR10、全局-Linux 病毒防护/Web&防火墙&进程管控、关闭 SSL 过滤、【临时】联软终端防泄漏加白 等
- eea 杀毒本体从未运行:27 个内核的 .ko 全空,开机现编译缺 gcc-12 → 每次启动失败;若运行将是 ftrace hook execve/open/mmap 的 on-access 扫描 + Web 访问保护
- 管理 agent 健康检查每 5min 被服务端 503 限流;复制报 Too many requests;本机被判入「问题计算机」动态分组;data.db 积压 3015 条待上报日志
7. ⚠️ 今日变化告警(09-16 下午)
- 14:41:24 起 eDLP 主策略
/api/esec/config/edlp开始每分钟拉取(此前无此行为) - 14:44:24 主策略 meta data name:1 由
enable:0→enable:1(09-13 以来一直是 0) - 同时段 AV 恢复扫描 job、外设策略拉取出现唯一一次 DNS 失败 → 疑似服务端做了一次配置变更推送
- 子功能(文件审计/截屏/外设)截至 19:46 仍全部 enable:0
- 盯法:
sudo grep -h 'enable' /opt/Corplink/logs/edlp.log | grep -vE 'enable: ?0'(出现非 0 即子功能被打开)
8. 未发现的能力(负面证据清单)
无 TLS 中间人(无 CA 注入痕迹)、无流量内容级审计(网络侧=元数据级)、无屏幕水印(Linux)、无抓包(无 AF_PACKET)、无 ptrace、无 MDM(插件报 OS 不支持)、威胁情报模块未安装。
9. 加密/无法读取清单
/opt/Corplink/.config.json(17KB 密文)、device.conf、config_cache/mi_*.cache(XOR 样式混淆,可见重复密钥流模式)、ESET lastPolicy.dat(53KB protobuf)、各 POST body 明文不落日志(内容级上报字段只能按端点语义推断)。
取证执行:主会话 + 4 个并行 agent(策略配置/二进制/上报通道/日志历史),2026-09-16