
Telegram Desktop、IPC注入によるワンクリックのアカウント乗っ取りの脆弱性
ZDI経由で2026年6月25日に報告されたTelegram Desktopの脆弱性は、CVE-2026-107181として追跡され、7.2.9で修正された。ローカルソケット経由のリンク受け渡しにおいて、コマンドを区切るセミコロンがエスケープされない問題が含まれている。
beaksecのブログ記事は、Telegram Desktopに含まれる2つの欠陥を連鎖させた攻撃経路を説明している。Telegram Desktopはクリックされたリンクをテキスト形式で実行中のインスタンスへローカルソケット経由で渡すが、セミコロンをエスケープしない。
脆弱性の仕組み
Telegram DesktopはtgというURIスキームを登録している。リンクはセミコロンで区切られた形式で渡されるが、セミコロンはエスケープされない。OPEN:コマンドは、スキームによるフィルタなしで任意のURLを受け付ける。
interpret:スキームはTelegramの内部コードにのみ存在し、OPEN:を通じて到達可能である。InterpretSendPathは、ディスク上のファイルを読み取り、認可チェックなしでチャットへ送信する。
攻撃の影響と既定設定
著者によると、クリックされたリンクによって任意のファイルを読み取ることが可能になるという。著者は、アカウントの乗っ取りに必要な暗号化されたローカルデータファイルを盗み出す手順を示している。既定設定の主な条件は以下のとおり。
- グループで受信したファイルは、8 MiBまで自動ダウンロードされる。
- ブロードキャストチャンネルでは自動ダウンロードはオフになっている。
- ローカルのパスコードは既定では設定されておらず、saltと暗号化されたDEKはtdata/key_datasに保存される。
攻撃経路には、Windowsのユーザー名という不明点が一つ残るとみられる。ブラウザによっては、被害者が過去にそのハンドラを使ったかどうかに応じて、Telegramの起動前に確認を求める可能性がある。
重大度はHighで、CVSS 3.1スコアは8.1である。ベクトルはCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N とされる。
修正状況と時系列
影響は7.2.8までのバージョンに及ぶとされ、Windows上では6.9.3での脆弱性が確認された。修正は7.2.9に含まれ、コミットはdb3405699fである。修正では、interpret://スキームとSupport::InterpretSendPathが削除され、単一インスタンスのソケット上の値がパーセントエンコードされた。
7.2.9の変更履歴にはレンダリングの修正のみが記載されており、修正に伴うアドバイザリは公開されていない。主な経緯は以下のとおり。
- 2026-06-25:ZDI経由で報告
- 2026-09-16:修正コミット
- 2026-09-17:7.2.9を公開
- 2026-09-30:ZDIが案件をクローズ
- 2026-10-03:本記事の公開
- 2026-10-07:CVEを割り当て
筆者の見立て
- 7.2.9の修正は静かに出荷されたと解釈している。
- 「保存先を尋ねる」設定を有効にすることが、アップグレード以外では最も効果的な緩和策だと論じている。
- 7.2.9以降へのアップグレードだけが、問題を実際に解消する手段だと論じている。
この記事は元記事の事実のみに基づいて自動生成されました。
出典
beaksec、「Telegram Desktop: one-click account takeover via IPC injection」、https://beaksec.github.io/posts/telegram-desktop-one-click-account-takeover/(ZDI の報道による)