做远程支持这行的,有个动作基本不过脑子:对面发来一个 ID,或者在电话里念一串九位数,你复制、粘贴、点连接,几秒钟就落到别人的桌面上了。修完断开,从来不会回头看这一下。

TeamViewer 在 10 月 27 号挂出一条安全公告,编号 TV-2026-1011,对应 CVE-2026-111585,CVSS 3.1 给到 8.8。这个洞不在「被人连进来」那一侧,恰恰在「你连出去」这一侧——你要是连上了一台攻击者控制、或者已经被拿下的主机,对面就能反过来打你。

出问题的是客户端里处理远端画面的那段代码。公告写的是一处整数溢出(CWE-190):对方精心构造一帧画面数据发过来,长度算着算着越了界,写到固定缓冲区外面去。轻的,客户端直接崩掉;重的,按公告原话——取决于平台——可能以 viewer 进程的权限执行任意代码。viewer 就是你本机上跑的那个 TeamViewer,权限一般是当前登录用户的权限。也就是说,被拿下的是操作者自己那台机器,不是被帮的那台。

链的方向得说清楚:你不需要点什么恶意链接,也不用装什么插件,只要「建立了一条通向对方的远程会话」。这恰好是远程支持最标准的开局动作。所以这条格外扎人——它打的是去救火的人。你以为是去帮忙,实际是走进了对方的场子。

8.8 而不是顶格,卡在 UI:R 上——那个「用户交互」就是「你连过去」这个动作本身。但其它的都不省事:AV:N、AC:L、PR:N(不需要任何凭证),C/I/A 三项全高。画面处理是实时跑的,真触发了,你在中间很难察觉到哪一帧不对。

影响版本(照公告):

  • Full Client:15.83 之前的所有版本(Windows / Linux / macOS)。
  • Portable:15.83 之前(Windows)。
  • Remote Control App:15.83 之前(Android)——手机上那个 App 也在里面,别只盯着 PC。
  • 老分支公告单独给了号:15.64.0(Legacy Win7/8)→ 15.64.10;14.7.0 → 14.7.48868(三个平台同一个号);13.2.0 → 13.2.36231(Windows)/ 13.2.154008(Linux)/ 13.2.154007(macOS)。

修复版本:升到 15.83,老分支按上面那几个号补;Android 那个 App 走应用商店更新。

一条自查:

teamviewer --version        # Linux
# Windows / macOS:帮助 → 关于;Portable 直接看文件名里的版本号

低于 15.83,就在范围内。顺带一句:那种拷来拷去的 Portable 版特别容易漏——它不进注册表、不进卸载列表,你翻软件清单根本看不到它,「关于」里那个版本号说不定还是几年前拷过来的。

没有 workaround。 公告没给绕过配置的办法。要么升级,要么改习惯:只对可信设备发起会话;对方发来的 ID 如果是陌生来源——尤其是那种「客服」打过来、说你电脑有病毒、让你连过去看看的——直接别连。说实话,这类电话本来就多,这条算是给「别连」那个直觉,补了个技术上的依据。

之前写过 Ivanti 那条从认证一路绕到 root 的链(从不需账号一直到 root),也写过 Tailscale 的 SSH 转发怎么被拿去横向。那两条都是「别人打你的服务端」,这条正好反过来——是「别人打你的客户端」。入口握在自己手里,反倒最容易被忽略过去。

来源:TeamViewer 安全公告 TV-2026-1011(https://www.teamviewer.com/en/resources/trust-center/security-bulletins/tv-2026-1011/)+ NVD CVE-2026-111585。手头机器多、记不清版本的,挑几台经常连外部的先看一眼「关于」,比全量盘一遍省事。