Blackwing Intelligenceは11月21日(米国時間)、「A Touch of Pwn - Part I」において、Windows Hello指紋認証に使用される上位3つの指紋センサーに認証をバイパスできる脆弱性が存在すると報じた。これは、Microsoft Offensive Research and Security Engineering(MORSE)の依頼で実施した指紋センサのセキュリティ評価で判明したとしている。

  • A Touch of Pwn - Part I

    A Touch of Pwn - Part I

セキュリティ評価の対象となった製品は次のとおり。

  • Dell Inspiron 15
  • Lenovo ThinkPad T14
  • Microsoft Surface Pro Type Cover with Fingerprint ID (for Surface Pro 8/X)

このセキュリティ評価では上記のデバイスに標準またはオプションで搭載されている指紋センサについて調査を実施。Windowsの指紋認証では「マッチオンチップ(MoC: Match on Chip)センサー」および「セキュアデバイス接続プロトコル(SDCP: Secure Device Connection Protocol)」がサポートされており、これらデバイスの指紋認証センサーでも利用されているものと考えられていた。

マッチオンチップセンサーとは、マイクロプロセッサとストレージが1つのチップに統合されたセンサーのこと。「指紋テンプレート(fingerprint templates - 指紋センサーによって読み取られた生体情報)」をチップ内部の安全なストレージに保管し、照合もチップ内で直接実行される。このため、オペレーティングシステムが侵害された場合でもチップ内部の指紋テンプレートが漏洩することはないとされる。

セキュアデバイス接続プロトコルとは、通信しているデバイスが信頼できるか検証し、安全な認証を実現するためのプロトコル。詳細は「Secure Device Connection Protocol · microsoft/SecureDeviceConnectionProtocol Wiki · GitHub」にて解説されている。セキュアデバイス接続プロトコルが実現する主な要素は次のとおり。

  • センサーが本物であり、既知の不正なファームウェアが実行されていないことを検証する
  • 不正な指紋がセンサーに登録されないように登録プロセスを保護する
  • 識別プロセスを保護して、攻撃者によるなりすましやリプレイを防止する

今回のセキュリティ評価では、デバイスの指紋センサーごとに異なる手法にて認証をバイパスすることに成功している。これらデバイスに搭載された指紋センサーはそれぞれ異なるメーカのもので、内部でUSB接続されている。通信にセキュアデバイス接続プロトコルを使用しているのはDell Inspiron 15のみであり、Lenovo ThinkPad T14はTLSによる通信の暗号化のみ、Microsoft Surface Proに至っては保護がなかったという。

基本的な攻撃手法は中間者攻撃(MITM: Man-in-the-middle attack)であり、USB通信を物理的に切り離して悪意のある装置を間にはさみ、それぞれの脆弱性に合わせた通信の改竄などによりWindows Helloの認証のバイパスに成功している。

Blackwing Intelligenceは指紋認証センサーを開発している企業に対し、セキュアデバイス接続プロトコルの実装と、信頼できる企業に製品の監査を依頼することを推奨している。特に前者については必ず実装してほしいとコメントしている。