Kerberoastingは、Microsoft Active Directoryを標的とした一般的な攻撃であり、攻撃者が検知されるリスクをほとんど負わずにサービスアカウントを侵害できる手法です。正規のアカウントを悪用するため、非常に効果的な攻撃となり得ます。しかし、強固なパスワードセキュリティによって犯罪者を寄せ付けないことが可能です。
まず、Kerberoastingとは何でしょうか?この名称は「Kerberos」、すなわちActive Directoryで使用される認証プロトコルに由来しています。Kerberosは、リソースへのアクセスを要求するユーザーやコンピューターの身元を確認します。
Kerberoastingは特権昇格攻撃の一種であり、標準のWindowsユーザーアカウントを掌握した攻撃者が、サービスプリンシパル名(SPN)を持つアカウントのパスワードをクラックしようと試みます。成功すれば、標的アカウントに接続されたあらゆるアーキテクチャ部分への攻撃を拡大できます。
多段階の攻撃
実際の攻撃はどのように行われるのでしょうか?やや複雑ですが、主に5つの段階があります:
- 攻撃者は、Active Directory内の既存のWindowsユーザーアカウントを悪用することから始めます。フィッシングやマルウェアによる認証情報の窃取など、従来の不正手段でこのアカウントにアクセスしている場合があります。
- 次に、GhostPackのRubeusなどのツールを使い、SPNが付与されたアカウントを特定します。これらのサービスアカウントは、しばしば高レベルの権限やドメイン管理者権限を持っているため危険です。
- 攻撃者は掌握しているアカウントを使い、Active Directoryのチケット発行サービス(TGS)からサービスチケットを要求します。このチケットには対象のSPNが含まれ、標的アカウントのパスワードハッシュで暗号化されています。
- 攻撃者はチケットをオフラインに持ち出し、活動を隠蔽します。これにより、不審なネットワークトラフィックが発生せず、発覚しにくくなります。
- 最後に、攻撃者はブルートフォース攻撃でSPNのパスワードハッシュをクラックし、平文のサービスアカウントパスワードを取得しようとします。これにより、そのアカウントがアクセスできるすべてのリソースに侵入可能となります。
攻撃者の優位性
Kerberoastingは複雑なプロセスですが、SPNが関連付けられたアカウントの検出やチケットの侵害を支援するツールがオンラインで多数公開されています。それでも、攻撃者にとっては大きな利点があります:
- どのユーザーアカウントでもADからチケットを要求できるため、1つのアカウントが他と同じくらい危険です。
- パスワードハッシュのクラックはオフラインで行うため、検知されることなく何度でも試行できます。John the RipperやHashcatなどのツールが利用されます。
- Kerberoastingはマルウェアに依存しないため、従来のアンチウイルスソフトなどでは防御できません。
Active Directoryを守るには
Kerberoastingがサイバー犯罪者にとって魅力的な攻撃手法である理由は明らかです。しかし、組織はADを守るために対策を講じることができます。
- 強固なSPNパスワードの徹底:SPNが有効な各アカウントには、長くランダムで使い回しのないパスワードを設定しましょう。25文字以上であれば、Kerberoasting攻撃の成功率は大幅に下がります。
- サービスチケットにAES暗号化を使用:AESベースの暗号化はRC4ベースよりも安全です。ドメインコントローラーやKerberos設定でレガシーRC4よりAES256を優先することで、チケットハッシュのクラック難易度とコストが大幅に上がります。
- SPNのフットプリントを減らす:既存のSPN有効アカウントを監査し、重複アカウントの統合や無効化を行いましょう。保護すべきSPN資格情報の数を最小限に抑えるのが目標です。グループ管理サービスアカウント(gMSA)も有効で、パスワード管理の自動化による追加のセキュリティが得られます。
- 権限の制御:サービスアカウントには必要最小限の権限のみを付与し、高権限グループのメンバーにしないようにしましょう。階層型管理モデルを導入すれば、SPNが侵害されてもドメイン全体の権限にエスカレーションされるのを防げます。
- Kerberosトラフィックの異常監視:Kerberoastingの初期偵察活動を見逃さないようにしましょう。たとえば、SIEM(セキュリティ情報・イベント管理)ソリューションで、特定SPNへのTGSリクエストの急増など異常なパターンを検知できます。
ADの古いアカウントをスキャン
Specops Password Auditorは、Active Directory環境内の弱いパスワード、使い回しパスワード、漏洩パスワードを事前にスキャンできる読み取り専用ツールです。ドメイン内のサービスアカウントのパスワードセキュリティを監査し、管理者権限を持つサービスアカウントの可視化にも役立ちます。
エクスポート可能なレポートでは、組織内の古いアカウントの全体像を把握できます。これらはしばしばKerberoasting攻撃の出発点となります。無料ツールはこちらからダウンロードできます。
Kerberoasting攻撃を防ぐ
Kerberoastingは複数の段階から成る複雑な攻撃手法です。しかし、確かなことが一つあります。それは、パスワードセキュリティが防御の要であるということです。
この防御は大きく2つのレベルで機能します。
まず、攻撃者がSPNアカウントに紐づくサービスチケットを要求する前に、操作可能な別のユーザーアカウントへのアクセスが必要です。攻撃者はこれをフィッシングやマルウェアなどのよく知られた手段で狙います。
多要素認証(MFA)も、こうした危険からアカウントを守る鍵となります。パスワードはその重要な要素です。
パスワードが最も厳格なセキュリティ要件を満たしていれば、Kerberoasting攻撃の最初の段階から組織や従業員を守ることができます。
次に、実際の攻撃段階です。前述の通り、Kerberoastingやブルートフォース攻撃は25文字以上の長くユニークなパスワードには太刀打ちできません。すべてのSPN関連アカウントにこのようなパスワードを設定することで、Active Directoryのセキュリティを大きく向上させられます。
Specops Password Policyを使えば、弱いパスワードの使用をブロックし、強力でユニークなパスフレーズの作成を強制できます。さらに、40億件を超える漏洩パスワードリストとADを継続的に照合し、パスワードが侵害されていた場合はエンドユーザーに警告します。
この仕組みが自社環境でどのように機能するか知りたい方は、デモをご依頼ください。
スポンサー:Specops Softwareによる寄稿記事