返回博客
·10 分钟阅读·productdevbook

如何识别 Mac 上的可疑网络活动

如何在早期发现 Mac 上的异常网络活动:工具、信号,以及哪些模式才真正意味着出了问题。

  • Security
  • macOS
  • Network monitoring
  • Privacy

凌晨 2 点你的风扇转起来。一个朋友提到银行标记了异常登录。你读到一篇关于会窃取开发环境变量的恶意 npm 包的帖子。突然你 Mac 的每一次小动静都感觉可疑。多数时候不是——macOS 设计上就话多——但能区分正常背景噪声和 Mac 用户实际应该调查的可疑网络活动是值得拥有的技能。这里是平静的清单,不贩卖恐惧。

从这个先验开始:健康 Mac 上多数意外流量是良性的。iCloud、Time Machine、推送通知、软件更新、你装的应用的遥测——它们都在奇怪时间产生流量。这份清单的重点是识别真正值得多看一眼的小一组规律。

"正常噪声"长什么样

在你能识别可疑信号之前,得知道你信任的 Mac 上后台流量长什么样。

Apple 系统服务

它们以你不立即认得的 PID 出现。常见:

  • cloudd — iCloud 同步(照片、云盘、iCloud 钥匙串)
  • bird — 也是 iCloud(是的,两个守护进程)
  • apsd — Apple 推送通知服务(始终在线,低速率)
  • nsurlsessiond — 后台 URLSession 传输(App Store、OS 更新、到网络目标的 Time Machine)
  • softwareupdated — macOS 更新检查(偶尔爆发)
  • gamedimagentidentityservicesd — Game Center、iMessage、FaceTime 状态
  • mDNSResponder — 本地 Wi-Fi 上的 Bonjour 发现(仅本地,不上互联网)
  • syspolicydtrustd — 代码签名和证书校验(小,频繁)
  • parsecdSiri 系列 — Spotlight 建议、Siri

如果你按字节排序只看到这些名字加上你的浏览器和聊天应用,你 Mac 没事。

第三方"同步"应用

任何承诺"文件无处不在"的都在持续跑:

  • Dropbox、Google Drive、OneDrive、Box
  • 1Password 同步、Bitwarden
  • Notion、Obsidian Sync、Bear、Things
  • Spotify、音乐(目录更新、同步)
  • VPN 客户端(TailscaleApp、NordVPN)——保持隧道存活

它们的流量稳态时小,你改变它们同步的东西时爆发。稳态空闲流量是正常的。

后台浏览器

Chrome 和 Safari 保持着到扩展更新服务器、同步端点和你忘了的钉住标签页(一个 Slack 网页标签、一个日历、一个 YouTube Music 标签)的连接。空闲浏览器还在动字节。

Mac 用户应该调查的可疑网络活动信号

现在到真正可疑的规律。这些值得仔细看一下——不要恐慌,只是看看。

1. 已知进程到未知目的地

你信任的进程(比如你的 IDE 或上个月装的小工具)在连一个你不认识的 IP 段。值得查。最简单的工具:

  • lsof -i -P -n -p <PID> — 那个 PID 打开的每条连接,带远程 IP 和端口
  • 对 IP 跑 whois,或反向 DNS 查(dig -x <ip>
  • 搜那个 IP——多数合法云端点(AWS、GCP、Azure、Cloudflare)立刻能认出

这里"可疑"指:小工具连到住宅 ISP IP 段、盗版应用打到你不认识的域、来自 npm 或 pip 的 CLI 工具 ping 一个跟它用途没明显联系的服务器。

2. 来自你机器的非时间段上传

凌晨 3 点稳定上传、来自一个没有上传理由的应用——那是真信号。这一项要小心:合法情况包括到网络目标的 Time Machine、iPhone 备份后追账的照片同步、以及大型 iCloud 云盘同步。

但如果是你不认识的应用、持续一小时、发送几百兆、你睡着——查它。

3. 不寻常端口

多数现代应用走 443 上的 HTTPS 或 80 上的 HTTP。一些合法例外:SSH (22)、邮件 (25/465/587/993/995)、DNS (53/853)、数据库客户端 (5432, 3306, 27017, 6379)、游戏客户端(看它们选什么范围)、VPN(1194、WireGuard 用 51820)、Tailscale(41641 UDP)。

到 4444、6667(IRC)这种端口,或没明显原因到任意高端口的出站,值得瞄一眼。一个在非标端口讲话从不用 443 的应用同样如此。

4. 一个应用的反复重连

一个进程开了一个连接,关闭,再开一个,循环每几秒一次。可能是配置错的 VPN 在重连。可能是 Electron 应用的渲染器在循环崩。可能是信息窃取者在尝试通过不稳定代理回家。

连接率(每秒每进程的连接数)比字节率是更敏感的信号。

5. 一个你没装的新进程

带一个你从没见过的名字出现在你带宽列表里、/Applications 下没有 .app 包、可执行文件在 /tmp 或你不记得加过的 ~/Library/LaunchAgents 里。这是规范化的恶意软件形态。检查:

launchctl list | grep -v com.apple

…看不是 Apple 的活跃 launchd 任务。还有:

ls -la ~/Library/LaunchAgents/ /Library/LaunchAgents/ /Library/LaunchDaemons/

…看持久化文件。多数条目是合法的(Dropbox、Spotify 等),但你不认识的,去查。

6. 通常安静的进程突然尖峰

Spotlight(mds_stores)通常不做网络 I/O。一个代码签名守护进程不该在上传。一个合法进程突然在它的类别外行动是个信号——有时是软件更新改变了行为,有时是别的原因。

平静的清单

在恐慌之前跑这份清单。约十分钟。

  1. 看活动监视器 → 网络标签页。 按"发送数据/秒"和"接收数据/秒"排序。记下前五里你不认识的。
  2. 对每个未知进程:右键 → 检查 → 打开文件和端口。 它在跟什么地址通信?bundle 路径在 /Applications 下?在 ~/Library 下?在 /tmp 下?
  3. 查 bundle ID。 mdls -name kMDItemCFBundleIdentifier <path>。搜它。合法应用显示清晰结果。
  4. 检查 launchd 持久化。 launchctl list | grep -v com.apple 和上面列的 LaunchAgents/Daemons 文件夹。
  5. 检查统一日志里那个进程。 log show --last 1h --predicate 'process == "Suspicious"' --info——它在做什么?
  6. 检查已装扩展。 systemextensionsctl list 看网络扩展。你没装的,去查。
  7. 跑一个声誉不错的扫描器。 Malwarebytes for Mac 和 KnockKnock(来自 Objective-See)都是免费且口碑好。它们不是绝对无敌但能抓明显的。
  8. 如果还不确定,截图问人。 可疑进程的"检查"面板截图加上 launchctl list 的粘贴,对有经验的人足够分诊。

看 ova 实战

一眼可瞄的菜单栏带宽监控——本地、签名、约 3 MB。

下载 macOS 版

为什么被动监控帮得上忙

调查可疑活动最难的部分是它发生时你在场。等到风扇转起来,作恶进程可能已经停了。等你打开活动监视器,尖峰已经过去。

ova 这种菜单栏带宽监控帮上忙是因为它被动且连续。它约 1 Hz 采样并把历史本地存储,所以当你终于注意到风扇时,可以拖回过去几小时看那段时间网络精确长什么样。按应用、辅助归并、在时间线上。

那不替代真正的 EDR 工具(那些为严肃威胁模型存在),但对个人使用,它显著改善你看到所找信号的几率。

按应用历史用于取证
ova 把按应用带宽的可拖动时间线保留在一个本地 SQLite 文件里。当你发现什么不对,可以回头看而不是试图实时抓。

看着吓人但通常不是的事

一份"这看起来可疑但其实正常"的简短清单:

  • 新 Wi-Fi 网络上 mDNSResponder 的爆发。 Bonjour 发现。正常。
  • identityservicesd 在连 Apple 服务器。 iMessage / FaceTime 状态。正常。
  • apsd 维持着到 *.push.apple.com 的长连接。 推送通知。正常。
  • com.apple.geod 偶尔伸出去。 地图和定位服务。正常。
  • trialdparsecdsearchpartyd Apple 研究 / Spotlight / 查找。正常。
  • softwareupdated 活动后立刻巨大下载爆发。 macOS 更新。正常。
  • 17.x.x.x 的连接。 那是 Apple 的 IP 段。正常。

不确定时,搜进程名加 "macOS"——多数 Apple 守护进程都有充分文档。

真正罕见的事

对个人管理的 Mac,真正入侵对这些用户不常见:

  • 坚持用 App Store 和已公证应用
  • 不跑盗版软件
  • 不读就粘贴随机网站的 shell 脚本
  • 让 macOS 保持最新
  • 不在关键账号上重复用密码

今天最常见的真实威胁不是"Mac 病毒",而是与破解应用捆绑的窃取者恶意软件、针对开发者的恶意 npm/pip 包,以及让你跑 curl-pipe-bash 命令的钓鱼页面。防御跟一直以来一样:当心你装什么、当心你往终端粘什么。

收尾

Mac 用户实际需要担心的可疑网络活动真实存在,但比感觉的稀少。多数无法解释的流量是 iCloud、Apple Push、同步应用,或者忘了的浏览器标签页。值得调查的信号是:熟悉进程到未知目的地、不该上传的应用在非时间段上传、反复重连、不寻常端口,以及 launchd 中出现不熟悉的进程。上面那份平静清单约十分钟,多数情况下都能解决。

对被动、持续的觉察,让你在感觉不对时能回头看,装 ova——约 3 MB,macOS 14 及以上,Apple Silicon 和 Intel,约 1 Hz 采样,所有数据留在你本地磁盘。不是防火墙,不是 EDR——只是一个清晰的视图看你的应用在做什么,需要时可用。