次の方法で共有


Windows用SMB認証レートリミッターの設定(プレビュー)

適用対象Windows Server Insiders Builds、Windows 11 Insiders Builds

重要

Windows Insider および Windows Server Insider ビルドはプレビュー段階にあります。 この情報はプレリリース製品に関連するものであり、リリース前に大幅に変更される可能性があります。 ここに記載された情報について、Microsoft は明示または黙示を問わずいかなる保証をするものでもありません。

SMB認証レートリミッターは、ブルートフォース認証攻撃に対処するために設計されたWindows ServerおよびWindowsクライアント用のSMBサーバーの機能です。 ブルートフォース認証攻撃は、1秒間に複数のユーザー名とパスワードの推測をSMBサーバーに浴びせます。 Windows Server Insider build 25075およびWindows 11 Insider build 25375から、SMB認証レートリミッターがデフォルトで有効になりました。 失敗した NTLM または PKU2U ベースの認証の間のデフォルトの遅延は 2 秒であり、設定することができます。 この記事の内容。 SMB 認証レートリミッタの仕組みと設定方法について説明します。

リモートファイルを開いたりコピーしたりするために、管理者がWindowsファイアウォールを介してSMBサーバーサービスへのアクセスを許可している場合、悪意のある行為者はSMBアクセスを認証を試みる手段として使用することができます。 攻撃者はユーザ名を知ることで、いくつかの方法を用いてローカルまたは Active Directory ベースの NTLM ログオンをマシンに送ることができる。 パスワードの推測頻度は、1 秒間に数十回から数千回に及びます。 NTLM の詳細については、NTLM の概要を参照してください。

侵入検知ソフトウェアがなかったり、パスワード・ロックアウト・ポリシーが設定されていなかったりすると、攻撃者はユーザーのパスワードを推測することができます。 SMBサーバーはWindowsの全バージョンでデフォルトで実行されるが、ファイアウォール・ルールが許可されていない限り、デフォルトではアクセスできません。 ファイアウォールをオフにしてデバイスを安全でないネットワークに参加させたエンド・ユーザーも、同様の問題に直面します。

SMB認証レート・リミッターの仕組み

SMB サーバサービスでは、認証レートリミッタを使用して、NTLM または PKU2U ベースの認証に失敗するたびに 2 秒の遅延を設けています。 つまり、攻撃者が毎秒 300 回のブルートフォース試行をクライアントから 5 分間(90,000 パスワード)送信していた場合、同じ回数の試行には 50 時間以上かかることになります。 同様の深層防御技術と同様に、SMB認証レート・リミッターの目的は、攻撃のコストを増加させることで、Windowsマシンを魅力的でない標的にすることです。

前提条件

SMB認証レートリミッターを設定する前に、以下のものが必要です:

  • 以下のオペレーティング・システムのいずれかで動作しているSMBサーバー。
    • Windows Server Insiders ビルド 25075 またはそれ以降。
    • Windows 11 Insiders ビルド 25375 またはそれ以降。
  • コンピューターの管理者権限。
  • ドメインでグループ ポリシーを使用している場合は、グループ ポリシー オブジェクト (GPO) を作成または編集し、適切な組織単位 (OU) にリンクするための権限が必要です。

SMB認証レートリミッターの設定

SMB認証レートリミッターを使用すると、認証に失敗するまでの遅延を設定できます。 また、PowerShellまたはグループポリシーを使用して、SMBレートリミッターを手動で有効または無効にすることもできます。 SMB認証レートリミッターを有効にするには、以下の手順に従います。

PowerShellのSmbServerConfigurationコマンドレットを使用して、SMB認証のレートリミッターを構成する方法を示します。

  1. 管理者として PowerShell ウィンドウを開きます。

  2. NTLM または PKU2U ベースの認証に失敗するたびに遅延させるミリ秒数を決定します。 デフォルト値は 2000 ミリ秒 (2 秒) です。 この値は 100 の倍数である必要があり、許容範囲は 0 ~ 10000 です。

  3. 以下のコマンドを実行して、SMB 認証のレートリミッタを有効にします。

     Set-SmbServerConfiguration -InvalidAuthenticationDelayTimeInMs <Milliseconds>
    

Note

この変数を0に設定すると、SMB認証レートリミッターが無効になります。

現在の値を確認するには、以下のコマンドを実行します:

Get-SmbServerConfiguration | Format-List -Property InvalidAuthenticationDelayTimeInMs

SMB認証レートリミッターはKerberosには影響しません。KerberosはSMBのようなアプリケーションプロトコルが接続する前に認証を行います。 SMB認証レートリミッターは、特にドメインに参加していないデバイスのために、深層防御のもう1つのレイヤーとなるように設計されています。