遠隔操作の「操作する側」も攻撃される:TightVNC・TeamViewer の画面データ処理の欠陥
接続先のサーバーが細工した画面データを送ると、操作する側のビューアーでコードが実行される欠陥が TightVNC と TeamViewer で相次いで公表された。ビューアーを更新し、知らない相手の接続先につながない、待ち受けモードを外に開けない。
何が起きたか
- TightVNC(Windows 版ビューアー、2.8.88 で検証): サーバーが申告する画面サイズからバッファーの大きさを計算するときに整数があふれる。例として 32768×32769 画素・32 ビットでは本来約 4GB 要るところ 128KB しか確保されず、その外に書き込める。報告元はヒープ情報の漏えいで ASLR を回避し、コード実行まで実証した。ビューアーが認証なしの方式も受け入れるため、パスワード入力の前に成立する。
- TeamViewer(CVE-2026-111585、CVSS 8.8): 画面データを展開する処理の整数オーバーフローからヒープのバッファーオーバーフローになる。攻撃者が管理する接続先、または乗っ取られた接続先を遠隔操作すると、操作する側でサービス妨害や、環境によっては任意コード実行が起きうる。公表時点で悪用は確認されていない。
対策
- ビューアーを更新する
- TightVNC: 2 系は 2.8.90 へ(2.8.89 からセキュリティー修正が入っている)。現行の 4 系は 4.0.2 が最新。
- TeamViewer: 15.83 以降。Windows 7・8 向けは 15.64.10、14.7 系は 14.7.48868、13.2 系は Windows 13.2.36231 / Linux 13.2.154008 / macOS 13.2.154007。
- TightVNC の待ち受け(リスニング)モードを外に開けない: 待ち受けは全インターフェースの 5500 番ポートで、報告によると IP 制限もパスワードもない。使わないなら止め、使うならファイアウォールで接続元を絞る。
- 知らない相手の接続先につながない: 想定される入口は、攻撃者が送るリンク、偽のサポート用サーバー、ポートを乗っ取られた正規サーバー。「サポートのためにこちらへつないでください」という誘導は、操作する側を狙う攻撃の可能性がある。
- サポート担当の端末を守る: 多くの顧客端末に接続するヘルプデスクの PC は、1 台でも乗っ取られた接続先に当たると被害を受ける。最新版の維持を優先し、権限の小さいアカウントでビューアーを動かす。
一般化できる教訓
- 遠隔操作ツールは「接続される側」の守りばかり意識されがちだが、画面データという信頼できない入力を解析するのは操作する側。クライアント側も攻撃面として更新対象に入れる。