更新8 月以降のある時点で、Microsoft は Teams Web アプリのクロスサイト スクリプティング (XSS) バグをひっそりと修正しました。このバグにより、Teams コラボレーション アプリの Linux、macOS、および Windows デスクトップ バージョンに重大なリモート コード実行 (RCE) の脆弱性が生じていました。
この問題を特定したセキュリティ研究者は、Microsoft はリスクを認識するためにもっと努力すべきだったと示唆し、Teams は自動的に更新されるため、Microsoft は欠陥の詳細を公開したり、共通脆弱性識別子 (CVE) を取得したりしなかったと指摘している。
約3か月前にこの欠陥を報告したEvolution Gamingのセキュリティエンジニア、オスカーズ・ベゲリス氏は月曜日、自身の調査結果に関するレポートを公開した。それによると、マイクロソフトは脆弱性を軽視し、XSSバグを単に「重要」で「なりすまし」の可能性があると評価し、デスクトップアプリのRCEの可能性を無視したという。
ベゲリス氏は、Teamsの脆弱性が「ゼロクリックでワーム化可能なクロスプラットフォームのリモートコード実行」に悪用される可能性があると主張している。MicrosoftのTeamsウェブアプリのクロスサイトスクリプティング(XSS)バグを悪用することで、攻撃者はTeamsメッセージを送信または編集し、メッセージが閲覧された際に任意のコードを実行する可能性がある。
「これで終わりだ」と彼は書いた。「被害者からのこれ以上のやり取りはなくなった。これで、社内ネットワーク、個人文書、Office 365の文書/メール/メモ、秘密のチャットが完全に侵害されたことになる。考えてみてください。たった一つのメッセージ、たった一つのチャネル、やり取りは一切なし。誰もが悪用されることになるのです。」
Vegeris 氏は、Teams デスクトップ アプリで RCE を利用しなくても、Web アプリ XSS によって攻撃者が Teams や Office 365、Outlook、Skype などの他の Microsoft サービスからシングル サインオン認証トークンを取得し、Teams 内の機密の会話やファイルにアクセスできたと主張しています。
マイクロソフトは112のセキュリティホール修正を公開。グーグルが公開したカーネルの脆弱性への対策も含まれる。
続きを読む
ベゲリス氏によると、これらの攻撃は、組織内のアカウント所有者ではなく、Teamsのゲストユーザーによって密かに実行される可能性があるとのことです。偶然にも、マイクロソフトは最近、2021年2月からTeamsでゲストアクセスをデフォルトで有効にすると発表しました。
Vegeris 氏は今年初めに同様に深刻な Slack のバグを発見したが、共通点は Slack と Teams の両方が、Linux、macOS、Windows で実行される Web テクノロジーを使用してデスクトップ アプリを構築するためのフレームワークである Electron.js をベースとしていることである。
Slack のこの件に関する投稿で感謝されたもう 1 人のバグハンター、Contrast Security のセキュリティ調査ディレクターの Matt Austin 氏は、 8 月にThe Registerとの電話インタビューで、Teams に影響する RCE バグが 1 年以上も修正されていないことを認識していると語った。
Electron.js は、比較的使いやすいため経験の浅い開発者にアピールし、またそのアーキテクチャとデフォルト設定では当初、Web に公開されたプロセスを Node.js API から保護することがほとんどできなかったため、セキュリティ保護が難しいことで知られています。
この事例で、Vegeris 氏は、アプリ内の @mentions に関連付けられたプロパティに割り当てられたペイロード(コード文字列)として、Teams チャットメッセージにコードを挿入する方法を発見しましたdisplayName
。この概念実証エクスプロイトは、ユーザーの SSO トークンをローカルストレージに書き込み、そこからトークンを取得して悪用することが可能です。
.NET Coreに新たな要素が加わる: Microsoftはランタイムを自動的にパッチ適用し続ける
続きを読む
Vegeris 氏はまた、リモート モジュールの無効化、リモート コンテンツを表示するレンダリング プロセスでの Node.js 統合の無効化、preload.js スクリプトへの依存、contextIsolation フラグなど、Electron セキュリティ制御によって課せられたさまざまな制限を回避する RCE ペイロードも開発したと主張しています。
マイクロソフトは、Office 365クラウドバグ報奨金プログラムにおいて、脆弱性チェーンのバグ報告を受け付けたとされているが、XSSについては「重要」、影響度については「なりすまし」と評価したのみで、報奨金は500ドルから3,000ドルの範囲だった。デスクトップ版Teamsアプリのリモートコード実行(RCE)は、「重要」バグの場合は5,000ドルから15,000ドル、「重大」バグの場合は最大20,000ドルの報奨金が支払われる見込みだったが、クラウドに特化したプログラムの対象外として「対象外」として却下されたとされている。
「少なくともこれで同僚同士の新しいジョークができた。リモートコード実行(RCE)バグが見つかったときはいつも、『重要、なりすまし』って言うんだ。ありがとう、マイクロソフト!」と彼は冗談を言った。
ベゲリス氏は自身の発見に対するバグ報奨金の支払額について特に不満を述べていないものの、マイクロソフトがバグの解釈を可能な限り倹約的にしたという印象を抱かせます。しかし、Slackのバグに関しては、1,750ドルという低い支払額も問題でした。
マイクロソフトはコメント要請に応じなかった。®
追加更新
マイクロソフトの広報担当者は電子メールでの声明で、「10月にアップデートを実施して問題を軽減し、自動的に展開して顧客を保護した」と述べたが、ベゲリス氏が指摘した点には一切触れなかった。