Bleeping Computerはこのほど、「Why Changing Passwords Doesn’t End an Active Directory Breach」において、Active Directory(AD)およびハイブリッドEntra ID環境でパスワードリセットを実施しても侵害が止まらない原因と対策を解説した。

一般的にネットワークシステムへの不正侵入は、認証情報のパスワードリセットを実施することで新しい侵入を阻止可能とされる。しかしながら、Active Directory環境など一部のシステムでは、パスワードリセットが有効に機能しない可能性があるという。

  • パスワードリセットだけでは不十分なケースもあり、セッション終了やKerberosチケット無効化など追加対策が求められる 出典:Microsoft

    パスワードリセットだけでは不十分なケースもあり、セッション終了やKerberosチケット無効化など追加対策が求められる 出典:Microsoft

原因はWindowsのローカルキャッシュ

Bleeping Computerによると、Windowsはリモートサインインをサポートするために、パスワードハッシュをローカルキャッシュするという。これは以前の認証情報を保持し、ドメインの再接続を軽減する目的があるとされる。

ローカルキャッシュは同期タイミングで更新され、新しいパスワードハッシュに切り替わる。このタイミングはデフォルトで数分程度とされるが、攻撃者はこの短い時間に追加の攻撃を成功させることで、その後の攻撃を継続することができる。

攻撃者はどうやって侵害を継続するのか

パスワードリセットを回避するその他の攻撃手法として次を挙げている。

  • Active Directory認証のKerberosチケット - パスワードリセット後に明示的にセッションを無効化しない限り、一定期間継続して不正アクセスすることができる
  • サービスアカウント - ユーザーアカウントとは異なり、通常は長期間有効なパスワードが設定される。管理者がサービスの継続性を優先する場合、意図的にパスワードリセットから除外するケースがあり、その場合は侵害が継続される
  • チケット攻撃 - Kerberosチケットを付与するチケットアカウントを侵害することで、Kerberosチケットを偽造する。この攻撃に成功した場合、パスワードリセットは効果的に回避される
  • アクセス制御リストの侵害 - 攻撃者が侵害したアカウントにパスワードリセット権限を与える手法。パスワードリセットを実行しても権限はリセットされないため、攻撃者は任意のユーザーパスワードを再リセットできる

攻撃者を確実に排除する方法

Active DirectoryおよびハイブリッドEntra ID環境において、Bleeping Computerが推奨する攻撃者の排除方法は次のとおり。

  • パスワードリセットを実施する
  • アクティブセッションをすべて終了する
  • 影響を受けたシステムを再起動することでKerberosチケットを無効化する
  • 偽造チケットを回避するために、KRBTGTアカウントを「2回」リセットする
  • サービスアカウントのパスワードローテーションを実施する。管理者はローテーションを可能にする仕組みを導入しておく必要がある
  • グループメンバーシップ、委任アクセスとアクセス制御リスト、特権アカウントとロールの監査を実施する

攻撃者を迅速に排除できる体制構築を

企業は攻撃を受けると、全オンラインサービスの停止に追い込まれ、復旧には多くの時間を要することが予想される。このような損害を最小限に抑えるために、オンラインサービスを展開している企業には、侵入検出後の速やかな攻撃者排除を想定したセキュリティ環境の構築が望まれている。