連載
» 2017年09月22日 05時00分 公開

Windows 10が備えるセキュリティ機能(3):認証情報を守るWindows 10の「Credential Guard」 (1/2)

Windows 10が備える5段階のセキュリティ対策機能を順に解説する本連載。連載第3回は認証情報の保護について紹介する。新たに加わった「Credential Guard」の役割と、認証情報を盗み出す攻撃について紹介する。

[高橋 正和(日本マイクロソフトチーフセキュリティアドバイザー),@IT]

 Windows 10のセキュリティ対策について、起動前のデバイスの保護から侵害の検出と対策まで、順を追って解説する本連載。「デバイスの保護」(第1回)と「脅威からの保護」(第2回)に続いて、今回は「認証情報の保護」の仕組みを解説する。

 Windows 10が登場する以前から、認証情報を保護する仕組みの改善が続いている。Windows 10では仮想マシン「VBS」を利用した「Credential Guard」の仕組みを導入しており、さらに認証情報の保護が進んだ(図1)。

図1 図1 Windows 10で利用可能なセキュリティ対策 左右に並ぶ5つのスタックごとにさまざまな技術を利用している。今回は5つのスタックのうち、赤枠で囲った「認証情報の保護」について解説する。Windows 10を新規インストールした場合や、Windows 8(64bit版)からアップグレードした場合に利用可能な対策を青色で、Windows 7/8(32bit版)からWindows 10にアップグレードした場合に含まれる対策を空色で、Windows 7に含まれる対策を黒で示した

 近年セキュリティ対策で重視されているのは、多数の企業が被害を受けた標的型攻撃だ。標的型攻撃では、OSやアプリケーションの報告されていない脆弱(ぜいじゃく)性を利用したゼロディ攻撃や、対象企業や人物ごとにカスタマイズされた標的型メールなど、攻撃の入口に注目することが多い。このため多くの企業は入口対策を重視する。

 しかし、攻撃の手法を分析すると、入口よりも「認証情報」と「アカウントの権限」を守ることが対策の鍵だと分かる。

 Windows 10では、「認証」と「認証情報」にそれぞれ新しい対策手法を取り入れた。デバイスとオンラインサービスの「認証」としては、第2回で紹介した「Windows Hello」と「Microsoft Passport」を実装。一方、「認証情報」に関する対策として実装したのが、今回解説する「Credential Guard」だ。

Windows OSの「ハッシュ」を保護するCredential Guard

 後ほど解説するように、Windows 8.1までは認証情報を「ハッシュ」の形でWindows OS内部に保持していた。このため、ハッシュを盗み出される危険性が残っていた。

 Credential GuardではVBSを利用して、ハッシュ情報を別の仮想マシンに分離した(図2)。Windows OS上で認証情報を扱うLSA(Local Security Authority)プロセスは、リモートプロシージャコールを使って、VBS上のCredential Guardと通信し、これで認証する。攻撃者によってアクセスされる危険性が大きく下がったといえる*1)

*1) Credential Guard によるドメインの派生資格情報の保護

図2 図2 Credential Guardの構成 Windows 10では標準でハイパーバイザ上にWindows OS本体(左)と仮想マシンVBS(右)を配置する。LSAプロセス(LSASS)はリモートプロシージャコールを用いて、VBS内のCredential Guard(LSAIso)と通信する

Windowsが持つハッシュ情報を盗むPass-the-Hash攻撃

 Credential Guardは、標的型攻撃のうち「Pass-the-Hash攻撃を防ぐために役立つ。Pass-the-Hash攻撃とはどのようなものなのか、順を追って説明しよう。典型的な標的型攻撃では次のような段階を踏んで重要な情報を盗み出す(図3)。

図3 図3 典型的なPass-the-Hash攻撃の手法 1台のPCを足掛かりにして、高い権限を持つ認証情報を得ようとする

 まず、ユーザーを誘導したWebサイトやメール、さらにはUSBメモリなど何らかのメディアを経由して、イントラネット内のユーザーPC上で攻撃者がRAT(Remote Access Tool)を実行する(図3の1)。これでインターネットを経由して任意の操作を実施できる環境が1つ構築された。

 続いて、より高い権限を持った認証情報を取得するため、このPCを起点として他のPCやサーバへの攻撃を行う(図3の2と3)。最終的には、Domain Administratorアカウント権限の奪取を狙う(図3の4)。こうなると重要な社内情報へアクセスされてしまう。

 認証情報を取得する途中の攻撃は、3種類に分かれる(図4)。「既知のアカウントとパスワードを組み合わせてログオンを試みる」攻撃(Brute Force、辞書攻撃など)や、「キーロガーと呼ばれるマルウェアを使ってユーザーが入力したIDとパスワードを取得する」攻撃、「Windowsカーネルやアプリケーションがメモリ上に保持しているIDとパスワードなどを奪取する」攻撃だ。

図4 図4 認証情報を取得する代表的な手法 手法は大きく3つに分かれる

 これらの攻撃の中で、Pass-the-Hash攻撃は、Windows OSが保持している「ハッシュ」を読み取る攻撃だ。直接パスワードを盗み出すのではなく、Windows OSが保持している認証情報を奪取することに特徴がある。なお、WindowsカーネルからIDとパスワードを取得する攻撃も、Pass-the-Hashと呼ばれる場合が多い。

 Pass-the-Hash攻撃には成功する条件がある。攻撃ツールを実行するシステムの管理者権限が必要なのだ。つまり、侵入したPCが管理者権限で運用されていた場合や、脆弱性などをついて管理者権限を取得されてしまった場合に限り、Pass-the-Hash攻撃の被害を受けてしまう。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

「Windows 7」サポート終了 対策ナビ

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。