From dc85cb6fe1a5678cc23228c5f3fe8d3d05a3ac43 Mon Sep 17 00:00:00 2001 From: Translator Date: Wed, 9 Jul 2025 16:59:17 +0000 Subject: [PATCH] Translated ['src/windows-hardening/active-directory-methodology/TimeRoas --- .../active-directory-methodology/TimeRoasting.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/windows-hardening/active-directory-methodology/TimeRoasting.md b/src/windows-hardening/active-directory-methodology/TimeRoasting.md index 78a30e52e..49e64d0d5 100644 --- a/src/windows-hardening/active-directory-methodology/TimeRoasting.md +++ b/src/windows-hardening/active-directory-methodology/TimeRoasting.md @@ -11,17 +11,17 @@ timeRoastingの主な原因は、MicrosoftがNTPサーバーへの拡張で残 ExtendedAuthenticatorSupported ADM要素が`false`に設定されている場合、元のMarkdown形式が保持されることがわかります。 >元の記事からの引用: ->>ExtendedAuthenticatorSupported ADM要素がfalseの場合、クライアントはクライアントNTPリクエストメッセージを構築しなければなりません。クライアントNTPリクエストメッセージの長さは68バイトです。クライアントは、セクション2.2.1で説明されているように、クライアントNTPリクエストメッセージの認証子フィールドを設定し、RID値の最下位31ビットを認証子のキー識別子サブフィールドの最下位31ビットに書き込み、その後、キーセレクタ値をキー識別子サブフィールドの最上位ビットに書き込みます。 +>>ExtendedAuthenticatorSupported ADM要素がfalseの場合、クライアントはクライアントNTP要求メッセージを構築しなければなりません。クライアントNTP要求メッセージの長さは68バイトです。クライアントは、セクション2.2.1で説明されているように、クライアントNTP要求メッセージの認証子フィールドを設定し、RID値の最下位31ビットを認証子のキー識別子サブフィールドの最下位31ビットに書き込み、その後、キーセレクタ値をキー識別子サブフィールドの最上位ビットに書き込みます。 ドキュメントのセクション4 プロトコル例のポイント3 >元の記事からの引用: ->>3. リクエストを受信した後、サーバーは受信したメッセージのサイズが68バイトであることを確認します。そうでない場合、サーバーはリクエストを破棄するか(メッセージサイズが48バイトでない場合)、未認証リクエストとして扱います(メッセージサイズが48バイトの場合)。受信したメッセージのサイズが68バイトであると仮定すると、サーバーは受信したメッセージからRIDを抽出します。サーバーはそれを使用して、NetrLogonComputeServerDigestメソッド([MS-NRPC]セクション3.5.4.8.2で指定)を呼び出し、暗号チェックサムを計算し、受信したメッセージのキー識別子サブフィールドの最上位ビットに基づいて暗号チェックサムを選択します(セクション3.2.5で指定)。その後、サーバーはクライアントに応答を送り、キー識別子フィールドを0に設定し、暗号チェックサムフィールドを計算された暗号チェックサムに設定します。 +>>3. リクエストを受信した後、サーバーは受信したメッセージのサイズが68バイトであることを確認します。そうでない場合、サーバーはリクエストを破棄するか(メッセージサイズが48バイトでない場合)、未認証のリクエストとして扱います(メッセージサイズが48バイトの場合)。受信したメッセージのサイズが68バイトであると仮定すると、サーバーは受信したメッセージからRIDを抽出します。サーバーはそれを使用して、NetrLogonComputeServerDigestメソッド([MS-NRPC]セクション3.5.4.8.2に指定)を呼び出し、暗号チェックサムを計算し、受信したメッセージのキー識別子サブフィールドの最上位ビットに基づいて暗号チェックサムを選択します(セクション3.2.5に指定)。その後、サーバーはクライアントに応答を送信し、キー識別子フィールドを0に、暗号チェックサムフィールドを計算された暗号チェックサムに設定します。 上記のMicrosoft公式ドキュメントの説明によれば、ユーザーは認証を必要とせず、RIDを入力するだけでリクエストを開始でき、その後、暗号チェックサムを取得できます。暗号チェックサムは、ドキュメントのセクション3.2.5.1.1で説明されています。 >元の記事からの引用: ->>サーバーは、クライアントNTPリクエストメッセージの認証子フィールドのキー識別子サブフィールドの最下位31ビットからRIDを取得します。サーバーは、NetrLogonComputeServerDigestメソッド([MS-NRPC]セクション3.5.4.8.2で指定)を使用して、次の入力パラメータで暗号チェックサムを計算します: +>>サーバーは、クライアントNTP要求メッセージの認証子フィールドのキー識別子サブフィールドの最下位31ビットからRIDを取得します。サーバーは、NetrLogonComputeServerDigestメソッド([MS-NRPC]セクション3.5.4.8.2に指定)を使用して、次の入力パラメータで暗号チェックサムを計算します: >>>![](../../images/Pasted%20image%2020250709115757.png) 暗号チェックサムはMD5を使用して計算され、具体的なプロセスはドキュメントの内容を参照できます。これにより、ロースティング攻撃を実行する機会が得られます。 @@ -34,3 +34,5 @@ Quote to https://swisskyrepo.github.io/InternalAllTheThings/active-directory/ad- ``` sudo ./timeroast.py 10.0.0.42 | tee ntp-hashes.txt hashcat -m 31300 ntp-hashes.txt +``` +