Kerberos / チケット処理
このカテゴリは KDC (TCP 88) との AS/TGS 交換、PAC、ccache/kirbi、
S4U、ticket 偽造を扱います。共通実装の中心は impacket.krb5 ですが、
S4U2self / S4U2proxy / U2U は getKerberosTGS ではなく
主に examples/getST.py 側です。
関連する技術
Section titled “関連する技術”- Kerberos — etype、key usage、PAC、S4U、ccache
- LDAP と AD セキュリティ記述子 — roast 対象の検索
- NTLM / SPNEGO — NT hash と RC4 長期鍵の関係
コマンド一覧
Section titled “コマンド一覧”| コマンド | 概要 |
|---|---|
| GetNPUsers.py | 事前認証を要求しないアカウントを LDAP で探します。必要に応じて AS-REP を取得し、オフライン解析用の形式で保存します。 |
| GetUserSPNs.py | LDAP からユーザーアカウントの SPN を列挙します。指定時には TGS も取得し、オフライン解析用の形式で出力します。 |
| getPac.py | S4U2self と U2U の交換を使って対象ユーザーの PAC を取得し、各バッファの内容を表示します。 |
| getST.py | TGS の取得、S4U2self/S4U2proxy、U2U、チケット更新を扱い、得たサービスチケットを ccache に保存します。 |
| getTGT.py | パスワード、NT ハッシュ、AES 鍵、keytab のいずれかで TGT を要求し、ccache に保存します。 |
| goldenPac.py | MS14-068 の検証用に改変した PAC を含むチケットを作ります。得た権限で SMB 経由の実行やチケット保存を行えます。 |
| keylistattack.py | RODC の番号と鍵を使って Kerberos Key List 要求を送り、指定または列挙したアカウントの長期鍵を要求します。 |
| kintercept.py | Kerberos の TCP 通信を中継し、要求と応答を観察・変換する開発用プロキシです。 |
| raiseChild.py | 子ドメインからフォレストルートへの権限昇格経路を検証します。DRS で資格情報を取得し、SIDHistory を含むチケットを作ります。 |
| describeTicket.py | ccache または kirbi 形式のチケットを読み取り、鍵があれば暗号化部分と PAC も復号して表示します。 |
| ticketConverter.py | MIT/Heimdal の ccache と Windows の KRB-CRED(kirbi)を相互変換します。Base64 での入出力にも対応します。 |
| ticketer.py | SID、グループ、鍵から Golden/Silver Ticket を作るか、既存のチケットと PAC を加工して ccache に保存します。 |

