ポストモーテム: セッションのログアウト不全
退職者のセッションが失効しなかった事象の経緯と対応です。
本稿は、セキュリティ事象の公表フォーマットの雛形です。UNCHAIN株式会社は、利用者への影響が確認された事象について、経緯、対応および影響範囲を公表し、報告いただいた方への謝意をあわせて記載します。実際に発生した事象を公表する際は、概要、発生原因、対応、影響範囲、再発防止策、謝辞、参考情報の順に記載するこの構成を用います。以下の記載は記入例です。日付、報告者名、対象人数、件数、バージョン番号はプレースホルダーのままにしてあり、公表時に実際の値へ置き換えてください。第三者の事業者名を記載する場合は、公表前に当該事業者と調整してください。
概要
外部のID基盤の事業者が提供するアカウントでログインしていた利用者について、当該アカウントが停止または削除された後も、Pulseのセッションが自動的に失効しない事象がありました。対象となる利用者は、自ら明示的にログアウトするまで、Pulseに保存された過去の会議ノートと文字起こしを引き続き参照できる状態でした。
外部の研究者からの報告を受けて調査を行い、デスクトップアプリとウェブアプリのそれぞれに修正を適用しました。
| 項目 | 内容 |
|---|---|
| 対象 | ワークスペースに参加していた利用者のうち、外部のID基盤のアカウントでログインしていた方 |
| 対象人数 | 〔対象となる利用者数〕名 |
| 報告日 | お問い合わせください |
| 報告者 | 〔報告者名〕(〔報告者の所属組織名〕) |
| デスクトップアプリの修正日 | お問い合わせください |
| ウェブアプリの修正日 | お問い合わせください |
| 利用者に必要な対応 | ありません(対象の方は自動的にログアウト済みです) |
発生原因
本事象は、Pulseのセッションの有効性を、連携している外部アカウントの状態と結びつけていなかったことにより生じました。有効性の確認がログインの時点に限られていた点が直接の原因です。
経緯
| 日付 | 出来事 |
|---|---|
| お問い合わせください | ワークスペース機能の提供を開始 |
| お問い合わせください | 研究者から、外部のID基盤との連携を利用者が解除した場合にセッションが残る事象の報告を受領 |
| お問い合わせください | 報告を受領した旨を返信し、内部調査を開始 |
| お問い合わせください | 調査の過程で、連携の解除だけでなく、アカウントの停止および削除の場合にも同じ事象が生じることを確認 |
| お問い合わせください | デスクトップアプリの修正を配信 |
| お問い合わせください | ウェブアプリの修正を適用 |
| お問い合わせください | 内部調査を完了し、本ポストモーテムを公開 |
直接の原因
Pulseのセッションが、連携している外部アカウントの有効性と結びついていませんでした。外部のID基盤で認証を行ってトークンを受け取った後は、その後にアカウントが停止または削除されても、利用者が自らログアウトするまでセッションが有効なままとなる構造でした。
有効性の確認は、ログインの時点でのみ行われており、セッションを更新する処理には含まれていませんでした。組織が退職者のアカウントを停止しても、その情報がPulse側のセッションに反映されない状態が続いていました。
対応
| 日付 | 対応内容 |
|---|---|
| お問い合わせください | 報告を受領し、事象を再現 |
| お問い合わせください | 停止済みまたは削除済みのアカウントを持つ利用者が、引き続きPulseにアクセスできる状態であることを確認 |
| お問い合わせください | 対象となる利用者を特定(いずれかのワークスペースに参加していた〔対象となる利用者数〕名) |
| お問い合わせください | 外部アカウントとの連携が無効になった場合に自動的にログアウトする処理を実装 |
| お問い合わせください | デスクトップアプリへ修正を配信 |
| お問い合わせください | ウェブアプリへ追加の修正を適用 |
影響範囲
- 対象は、ワークスペース機能の提供開始以降に、外部アカウントとの連携を解除した利用者、または当該アカウントが停止もしくは削除された利用者のうち、いずれかのワークスペースに参加していた〔対象となる利用者数〕名です。
- 対象となる利用者が参照できたのは、当該利用者がもともと閲覧権限を持っていた会議ノートおよび文字起こしに限られます。権限のない他の利用者のノートに到達できる事象ではありませんでした。
- 対象となる利用者は、修正の適用時にすべて自動的にログアウトされています。
- 利用者による対応は必要ありません。
この種の事象は、退職者の権限を確実に失効させる運用に影響します。ID基盤側でアカウントを停止しただけでは、連携先のサービスのセッションが即座に失効するとは限りません。退職時の手順には、各サービス側での明示的な権限の削除を含めることをおすすめします。ワークスペースからのメンバーの削除手順はワークスペースをご覧ください。
個人データの漏えい、滅失もしくは毀損またはそのおそれが生じた場合、事案の内容によっては、個人情報の保護に関する法律第26条に基づく個人情報保護委員会への報告(速報および確報)と本人への通知が必要になります。報告の対象となる事態は同法施行規則第7条に、報告の期限は同規則第8条に、本人への通知事項は同規則第10条に定められています。本記入例の事象では、参照できたのは当該利用者がもともと権限を有していた情報に限られるため、個人データの漏えい等には該当しないものとして整理しています。実際の事象では、権限の範囲と実際のアクセスの有無を確認したうえで判断してください。
本ページは、UNCHAIN株式会社の自主的な取り組みとして公開しているものです。民間事業者に対してセキュリティ事象の公表を一般的に義務づける法律はありません。法令上の義務として生じうるのは、個人情報保護法第26条に基づく個人情報保護委員会への報告および本人への通知、電気通信事業者として届出を行っている場合の通信の秘密の漏えい等に関する報告、ならびに法人のお客様との契約に基づく通知です。
再発防止策
- トークン更新時の検証 — アクセストークンを更新する処理に、連携先アカウントの有効性を確認する工程を追加しました。従来はログイン時にのみ行っていた確認を、セッションの継続中も行います。
- 定期的な確認 — 連携先アカウントの状態を定期的に確認し、停止や削除をより早く検知する仕組みを追加しています。
- 認証まわりの横断的な点検 — 認証とセッション管理について、製品全体を対象とする点検を開始しました。
- 変更時の審査 — 認証に影響する変更について、事前の審査を必須とする手順を定めました。
謝辞
責任ある開示を行っていただいた〔報告者名〕(〔報告者の所属組織名〕)に感謝します。報告の内容が具体的であったため、当初の報告範囲を超える影響の存在を早期に確認できました。
参考情報
- 脆弱性開示ポリシー — 調査を許可する範囲、報告の方法、報告者への対応
- ワークスペース — メンバーの追加と削除、権限の管理
- セキュリティ体制 — 平時の技術的・組織的な安全管理措置
- 本件に関するお問い合わせ: tharada@the-unchain.com/脆弱性のご報告: tharada@the-unchain.com
報告者または外部の研究者が公開した技術情報がある場合は、その参照先をここに記載します。掲載の可否と時期は、公開者と調整してください。