Kerberosとは【用語集詳細】
Kerberos(ケルベロス)は米国マサチューセッツ工科大学で開発されたネットワーク認証プロトコルです。
ネットワーク内でパスワードを送受することなくで安全に認証機能を実現するために作られました。
Kerberos認証は、各サービスに対しユーザー名とパスワードを入力する認証方式とは異なり、認証サーバーという信頼できるサードパーティーがユーザーを認証します。
Windows Server Active Directoryをはじめとする様々なサービスに利用されています。
Kerberos認証は、以下のエンティティによって構成されます。
- 鍵配送センター(Key Distribution Center、KDC)……チケット配布サーバーおよび認証サーバーから構成されます。ユーザーの認証およびチケットの発行を担当します。チケット配布チケット(Ticket Granting Ticket)は、KDCが発行するチケットであり、追加の認証なしに別のサービスへのアクセスを可能にします。
- 認証サーバー(Authentication Server、AS)……ユーザーがサービスにアクセスするための、チケット配布サーバー(Ticket Granting Server)サービスへのアクセスを提供します。これは、鍵配送センターがチケット配布チケットを発行することで実行されます。
- チケット配布サーバー(Ticket Granting Server、TGS)……サービスにアクセスするためのチケットを発行しユーザーに付与します。
Kerberosプロトコルの適用される範囲をレルム(Realm)といい、レルム内のサービスはSPN(Service Principal Name)、ユーザーはUPN(User Principal Name)というプリンシパルによって管理されます。
Kerberos認証のプロセスは以下のとおりです。
- ユーザーがネットワークにログインした後、ユーザーのプリンシパルが鍵配送センターに送られ、認証サーバーからのチケット配布チケットを要求します。
- 鍵配送センターがユーザーのプリンシパルを参照した後、ユーザーの鍵で暗号化されたチケット配布チケットを生成し、ユーザーに渡します。
- ユーザーは、自身の鍵によってチケット配布チケットを復号します。
- ユーザーのコンピュータに格納されたチケット配布チケットには期限が定められており、その間は、追加のパスワード入力が発生しません。
- ユーザーがリソースへアクセスする際は、格納されたチケット配布チケットを利用し、チケット配布サーバーへ送信します。チケット配布サーバーは、該当サービスへのチケットを配布します。
- ユーザーはアクセスしたいサーバーに対してサービス・チケットを送信し、アクセスします。
Kerberos認証、あるいはこの認証プロトコルを用いたActive Directoryに対しては、様々な攻撃法や攻撃ツールが存在します。
- Kerberoasting攻撃
- パス・ザ・チケット攻撃
- DCSync攻撃
- ゴールデンチケット
- シルバーチケット
- Mimikatz
- Rubeus