ottoの研究チームは9月16日(米国時間)、「Chrome & Edge Enhanced Spellcheck Features Expose PII, Even Your Passwords」において、Google ChromeやMicrosoft Edgeのスペルチェック機能を有効にしている場合に、パスワードや個人情報などの機密データが漏洩する可能性があるという問題を明らかにした。

同チームのレポートによると、Chromeにおいて「拡張スペルチェック」を有効にしている場合、および、EdgeにおいてMicrosoftエディターを利用している場合、Webサイトのログインページなどで「パスワードを表示する」のチェックを入れた際にGoogleやMicrosoftに入力済みのパスワードが送信されるリスクがあるという。

この問題はGoogleやMicrosoftが意図的に仕組んだものではなく、スペルチェックの精度を上げるためにクラウド上に入力テキストを送信していることが裏目に出た結果と言える。通常、パスワード入力フィールドに入力されたテキストは送信されることはない。しかし、多くのWebサイトがユーザビリティのために一時的にパスワードを表示する「パスワード表示」ボタンを提供している。このボタンをクリックしてパスワードを表示した瞬間に、入力テキストはスペルチェックの対象となってクラウドに送信されてしまう。

ottoでは、企業向けのサービスを提供しているサイトのうち、特に影響の大きいサービスとしてとしてMicrosoft 365、Allibaba Cloud、Google Cloud、AWS、LastPassを挙げている。ただし、レポートの公開時点でAWSとLastPassではすでに問題への対象が完了しており、リスクは取り除かれたとのことだ。

  • Alibaba Cloudへのログイン中にパスワードが送信される様子(引用: otto)

    Alibaba Cloudへのログイン中にパスワードが送信される様子 引用: otto

ottoではさらに50を超えるWebサイトをテストし、そのうちの30のWebサイトについてカテゴリ別に分類した上で、機密性の高いデータをGoogleやMicrosoftに送信しているかどうかを調査したという。その結果、1サイトを除く96.7%が機密データの送信を行っており、73%が「パスワードを表示」ボタンでパスワードの送信を行っていることが判明した。パスワードを送信していないWebサイトには単に「パスワードを表示」ボタンが用意されていないものも含まれているため、残りの27%が必ずしも安全だとは限らないとのことだ。

Webサイトの管理者がこの問題に対処する場合は、機密データを含む入力フィールドに対して「spellcheck=false」の属性を付加すればよい。ユーザー側で対処するには、スペルチェック機能を無効にする必要がある。Chromeの場合は、設定画面の「同期と Google サービス」のページを開き、「拡張スペルチェック」の項目を無効に設定すればよい。Edgeの場合、スペルチェック機能は「Microsoft エディター」という拡張機能として提供されているので、この拡張機能を無効にすることで対処できる。

  • Chromeで「拡張スペルチェック」を無効にする

    Chromeで「拡張スペルチェック」を無効にする

  • Microsoft Edgeにスペルチェック機能を提供する「Microsoft エディター」拡張

    Microsoft Edgeにスペルチェック機能を提供する「Microsoft エディター」拡張