Data/Locales/checks/ja/ADPasswordPolicyChecks.json
|
{ "_family": "ADPasswordPolicyChecks.json", "ADPWD-001": { "name": { "value": "既定のドメイン パスワード ポリシー", "status": "machine-draft" }, "description": { "value": "Default Domain Policy は、すべてのドメインユーザーに対するパスワードとロックアウトの基準設定を定義します。このポリシーは、より個別のきめ細かなパスワード ポリシーの対象とならないすべてのアカウントに適用されるため、強力なパスワード要件を強制すべきです", "status": "machine-draft" }, "recommendedValue": { "value": "最小長 14 文字、複雑さ有効、最長有効期間 365 日、最短有効期間 1 日、履歴 24 個のパスワード", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADDefaultDomainPasswordPolicy を使用して Default Domain Policy を確認します。グループ ポリシー管理を介して構成します: Default Domain Policy > コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > パスワード ポリシー。組織のセキュリティ要件に従って値を設定します", "status": "machine-draft" } }, "ADPWD-002": { "name": { "value": "きめ細かなパスワード ポリシーの列挙", "status": "machine-draft" }, "description": { "value": "きめ細かなパスワード ポリシー (FGPP) では、ユーザーグループごとに異なるパスワード要件を設定できます。パスワード ポリシーの全体像を把握し、意図したよりも脆弱なポリシーの対象となるグループがないことを確認するため、すべての FGPP を文書化すべきです", "status": "machine-draft" }, "recommendedValue": { "value": "すべての FGPP を、その優先順位、対象グループ、ポリシー設定とともに文書化する。最低限、特権アカウント向けの厳格な FGPP と通常ユーザー向けの標準的な FGPP を用意する", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADFineGrainedPasswordPolicy -Filter * を使用してすべての FGPP を列挙します。各ポリシーの優先順位の値、対象グループ、設定を文書化します。特権アカウントが標準ユーザーよりも厳格なポリシーの対象となっていることを確認します。Default Domain Policy のみが存在する場合は FGPP を作成します", "status": "machine-draft" } }, "ADPWD-003": { "name": { "value": "FGPP 適用状況の分析", "status": "machine-draft" }, "description": { "value": "きめ細かなパスワード ポリシーは、効果を発揮するために正しいグループに適用されなければなりません。FGPP の適用を誤ると、価値の高いアカウントがより脆弱なポリシーの下に置かれたり、FGPP が適用されず代わりに Default Domain Policy が使われるポリシーのギャップが生じたりする可能性があります", "status": "machine-draft" }, "recommendedValue": { "value": "すべての特権アカウントが厳格な FGPP の対象となっている。価値の高いアカウントが脆弱な既定ポリシーにフォールバックするようなポリシーのギャップが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "各 FGPP について、msDS-PSOAppliesTo 属性を確認して対象グループを把握します。特権グループのメンバーシップと相互参照してカバレッジを検証します。特定のアカウントについては Get-ADUserResultantPasswordPolicy を使用して有効なポリシーを判断します。FGPP 適用のギャップを修正します", "status": "machine-draft" } }, "ADPWD-004": { "name": { "value": "最小パスワード長", "status": "machine-draft" }, "description": { "value": "14 文字未満のパスワードは、最新の GPU ハードウェアによるオフラインの総当たり解読に対して脆弱です。NIST SP 800-63B は、最大 64 文字までのパスワードをサポートし、セキュリティと使いやすさのバランスをとる最小長を設定することを推奨しています。AD 環境では、14 文字が推奨される最小基準です", "status": "machine-draft" }, "recommendedValue": { "value": "標準ユーザーは最小 14 文字、特権アカウントは 25 文字", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy または適切な FGPP で最小パスワード長を構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > パスワード ポリシー > パスワードの長さ (最小値) = 14。25 文字以上を要求する特権アカウント向けのより厳格な FGPP を作成します", "status": "machine-draft" } }, "ADPWD-005": { "name": { "value": "パスワードの複雑さ要件", "status": "machine-draft" }, "description": { "value": "Windows のパスワード複雑さは、4 つの文字カテゴリ (大文字、小文字、数字、特殊文字) のうち少なくとも 3 つを要求し、パスワードにユーザーのアカウント名を含めないことを要求します。NIST はもはや複雑さを義務付けていませんが、補完的な制御 (禁止語リストなど) なしに AD で複雑さを無効化すると、パスワードが大幅に弱くなります", "status": "machine-draft" }, "recommendedValue": { "value": "複雑さを有効にする。理想的には、一般的なパターンに対する防御として Azure AD Password Protection またはカスタムの禁止語リストで補完する", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy で複雑さが有効になっていることを確認します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > パスワード ポリシー > 「複雑さの要件を満たす必要があるパスワード」= 有効。追加の禁止パスワード強制のために Azure AD Password Protection の展開を検討します", "status": "machine-draft" } }, "ADPWD-006": { "name": { "value": "アカウント ロックアウト ポリシー", "status": "machine-draft" }, "description": { "value": "アカウント ロックアウト ポリシーは、しきい値を超える失敗試行の後にアカウントをロックすることで、オンラインの総当たり攻撃やパスワード スプレー攻撃から保護します。ロックアウトがないと、攻撃者は任意のアカウントに対して無制限のパスワード推測を試みることができます。ただし、過度に厳しいロックアウトはサービス拒否のリスクを生みます", "status": "machine-draft" }, "recommendedValue": { "value": "アカウント ロックアウトのしきい値: 5 ~ 10 回。ロックアウト期間: 15 ~ 30 分。カウンターのリセットまでの時間: 15 ~ 30 分", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy でアカウント ロックアウトを構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > アカウント ロックアウトのポリシー。しきい値を 5 ~ 10 回、期間を 15 ~ 30 分、監視期間を 15 ~ 30 分に設定します。攻撃を示す可能性のあるロックアウト イベントを監視します", "status": "machine-draft" } }, "ADPWD-007": { "name": { "value": "パスワード履歴の強制", "status": "machine-draft" }, "description": { "value": "パスワード履歴は、ユーザーが同じパスワードを使い回すのを防ぎます。十分な履歴の深さがないと、ユーザーは少数のパスワードを交互に使い回すことができ、パスワードのローテーション要件によるセキュリティ上の利点が失われます", "status": "machine-draft" }, "recommendedValue": { "value": "少なくとも過去 24 個のパスワードを記憶するパスワード履歴", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy で構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > パスワード ポリシー > 「パスワードの履歴を記録する」= 24 個のパスワードを記憶する。履歴を素早く使い回すのを防ぐため、「パスワードの有効期間 (最短)」も少なくとも 1 日に設定されていることを確認します", "status": "machine-draft" } }, "ADPWD-008": { "name": { "value": "最長パスワード有効期間", "status": "machine-draft" }, "description": { "value": "最長パスワード有効期間は、定期的なパスワードのローテーションを強制します。NIST SP 800-63B は、侵害が疑われる場合を除き強制的な定期変更を推奨していませんが、多くのコンプライアンス フレームワークは依然としてそれを要求します。ポリシーは、コンプライアンス要件と使いやすさのバランスをとり、脆弱なパスワードにつながる過度に短いローテーション期間を避けるべきです", "status": "machine-draft" }, "recommendedValue": { "value": "コンプライアンス要件に応じて最長パスワード有効期間を 90 ~ 365 日とする。特権アカウントについては最長 60 日", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy で構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > パスワード ポリシー > 「パスワードの有効期間 (最長)」= 365 日 (またはコンプライアンス要件に応じて)。特権アカウント向けに、最長 60 日のより厳格な FGPP を実装します", "status": "machine-draft" } }, "ADPWD-009": { "name": { "value": "パスワードを無期限にするユーザー", "status": "machine-draft" }, "description": { "value": "「パスワードを無期限にする」フラグを持つアカウントは、最長パスワード有効期間ポリシーを回避します。これは管理されたサービスアカウント (gMSA はローテーションを自動的に処理します) には許容される場合がありますが、このフラグを持つユーザーアカウントは、侵害されたパスワードを無期限に保持し続けます", "status": "machine-draft" }, "recommendedValue": { "value": "パスワードを無期限にするユーザーアカウントが存在しない。自動ローテーションの免除が認められるのは Group Managed Service Account のみとする", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADUser -Filter {PasswordNeverExpires -eq $true -and Enabled -eq $true} -Properties PasswordNeverExpires を使用してアカウントを特定します。各アカウントについて業務上の正当性を確認します。ユーザーアカウントのフラグをクリアし、可能な場合はサービスアカウントを gMSA へ移行します。承認された例外はすべて補完的な制御とともに文書化します", "status": "machine-draft" } }, "ADPWD-010": { "name": { "value": "空白のパスワードを持つユーザー", "status": "machine-draft" }, "description": { "value": "PASSWD_NOTREQD フラグを持つアカウントは空白のパスワードを持つことができ、すべてのパスワード ポリシーを完全に回避します。このフラグは、アカウント作成スクリプトの実行中に意図せず設定されることがあります。空白のパスワードを持つアカウントは、ユーザー名を知っている者であれば誰でもアクセスできます", "status": "machine-draft" }, "recommendedValue": { "value": "空白のパスワードまたは PASSWD_NOTREQD フラグを持つ有効なアカウントが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADUser -Filter {PasswordNotRequired -eq $true -and Enabled -eq $true} を使用してアカウントを特定します。特定したすべてのアカウントについて、PASSWD_NOTREQD フラグを直ちにクリアし、強力なパスワードを設定します。将来このフラグが設定されないよう、アカウント作成スクリプトとプロセスを見直します", "status": "machine-draft" } }, "ADPWD-011": { "name": { "value": "重複するパスワード ハッシュ", "status": "machine-draft" }, "description": { "value": "複数のアカウントが同じパスワード ハッシュを共有している場合、パスワードの使い回し、よく使われるパスワード、または既定のパスワードを持つアカウントを示します。パスワードの使い回しは、単一の資格情報漏洩の影響を増幅し、複数のアカウントにわたる横方向の移動を可能にします", "status": "machine-draft" }, "recommendedValue": { "value": "同一のパスワード ハッシュを共有するアカウントのクラスターが存在しない。各アカウントが一意のパスワードを持つべきである", "status": "machine-draft" }, "remediationSteps": { "value": "適切な承認のもと、DCSync 対応ツール (DSInternals) を使用して NT ハッシュを抽出し比較します。ハッシュを共有するアカウントのクラスターを特定します。重複クラスター内のすべてのアカウントにパスワード変更を強制します。よく使われるパスワードを防ぐためパスワード フィルターを実装し、Azure AD Password Protection の展開を検討します", "status": "machine-draft" } }, "ADPWD-012": { "name": { "value": "HaveIBeenPwned データベース内のパスワード", "status": "machine-draft" }, "description": { "value": "既知の侵害データベースに出現するパスワードは、資格情報スタッフィング攻撃で実際に使用されています。AD のパスワード ハッシュを HaveIBeenPwned データベースと比較することで、標的にされやすい、侵害されたパスワードを使用しているアカウントを特定できます", "status": "machine-draft" }, "recommendedValue": { "value": "HaveIBeenPwned データベースで見つかったパスワードを使用している有効なアカウントが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "DSInternals の Test-PasswordQuality などのツールを使用して、NT ハッシュを HaveIBeenPwned Passwords データベース (ダウンロード可能なハッシュ リスト) と比較します。ハッシュが一致するすべてのアカウントに直ちにパスワード変更を強制します。今後、既知の侵害されたパスワードをブロックするため、Azure AD Password Protection またはカスタムのパスワード フィルターを展開します", "status": "machine-draft" } }, "ADPWD-013": { "name": { "value": "カスタム辞書によるパスワード チェック", "status": "machine-draft" }, "description": { "value": "組織固有の用語 (会社名、製品名、季節、地名) に基づくパスワードは、よく使われ、標的型攻撃者に容易に推測されます。カスタム辞書によるチェックは、複雑さ要件を満たしていても依然として予測可能なパスワードを特定します", "status": "machine-draft" }, "recommendedValue": { "value": "組織固有の用語、一般的なパターン (季節+年)、またはキーボード ウォークを含むパスワードを使用するアカウントが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "会社名、製品名、地名、季節、一般的なパターンを含むカスタム辞書を作成します。DSInternals などのツールを使用して、この辞書に対してパスワード ハッシュをテストします。一致するアカウントにパスワード変更を強制します。カスタムのパスワード フィルター、または Azure AD Password Protection のカスタム禁止パスワード リストを展開します", "status": "machine-draft" } }, "ADPWD-014": { "name": { "value": "既定/一般的なパスワード", "status": "machine-draft" }, "description": { "value": "既定の、一般的な、または容易に推測できるパスワード (Password1、Welcome1、またはアカウント名など) を使用するアカウントは、パスワード スプレー攻撃で最初に狙われる標的です。これらのパスワードはあらゆる攻撃者のワードリストに含まれており、多くの場合最初にテストされます", "status": "machine-draft" }, "recommendedValue": { "value": "最もよく使われる上位 1000 個のパスワード リストのパスワード、または既定のパスワード パターンに一致するパスワードを使用するアカウントが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "DSInternals の Test-PasswordQuality を使用して、一般的なパスワード リスト (SecLists など) に対してパスワード ハッシュをテストします。一般的なパスワードを持つすべてのアカウントに直ちにパスワード変更を強制します。Microsoft によって更新されるグローバル禁止パスワード リストを含む Azure AD Password Protection を実装します", "status": "machine-draft" } }, "ADPWD-015": { "name": { "value": "パスワード最終設定日の分布", "status": "machine-draft" }, "description": { "value": "すべてのアカウントにわたるパスワードの経過期間の分布を分析すると、ポリシー強制の有効性が明らかになり、極端に古いパスワードを持つアカウントを特定できます。何年もパスワードが変更されていないアカウントは、ポリシー変更で見落とされたか、パスワードを無期限に設定されている可能性があります", "status": "machine-draft" }, "recommendedValue": { "value": "最長パスワード有効期間ポリシーより古いパスワードを持つ有効なユーザーアカウントが存在しない。分布は定期的なローテーションのパターンを示すべきである", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADUser -Filter {Enabled -eq $true} -Properties PasswordLastSet | Group-Object {(New-TimeSpan $_.PasswordLastSet (Get-Date)).Days -replace '\\d$','0'} を使用してパスワード経過期間の分布レポートを生成します。ポリシーが許可するより古いパスワードを持つアカウントを調査します。必要に応じてパスワード変更を強制し、パスワードを無期限にするフラグを見直します", "status": "machine-draft" } }, "ADPWD-016": { "name": { "value": "LAPS の展開状況", "status": "machine-draft" }, "description": { "value": "ローカル管理者パスワード ソリューション (LAPS) は、各コンピューターに一意でランダムに生成されたローカル管理者パスワードを提供し、AD に安全に格納します。LAPS がないと、ローカル管理者パスワードは通常すべてのマシンで同一となり、1 つのハッシュを取得した後の容易な横方向の移動を可能にします", "status": "machine-draft" }, "recommendedValue": { "value": "ドメインに参加しているすべての Windows コンピューターの 100% に LAPS が展開されている。LAPS パスワードが欠落または期限切れのコンピューターが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "GPO、SCCM、または Intune を介して、ドメインに参加しているすべてのコンピューターに LAPS クライアント (CSE) を展開します。パスワードの複雑さ、長さ (少なくとも 20 文字)、経過期間 (30 日) について LAPS GPO 設定を構成します。コンピューター オブジェクトの ms-Mcs-AdmPwd または msLAPS-Password 属性を確認して展開を検証します。LAPS パスワードを持たないコンピューターを調査します", "status": "machine-draft" } }, "ADPWD-017": { "name": { "value": "LAPS パスワードの有効期限", "status": "machine-draft" }, "description": { "value": "LAPS パスワードは、ローカル管理者パスワードが侵害された場合の露出の窓を限定するため、定期的にローテーションすべきです。期限切れまたは古い LAPS パスワードは、それらのマシンで LAPS クライアントが正しく機能していないことを示します", "status": "machine-draft" }, "recommendedValue": { "value": "LAPS パスワードの有効期限が 30 日に設定されている。期限切れの LAPS パスワードを持つコンピューターが存在しない", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADComputer -Filter * -Properties ms-Mcs-AdmPwdExpirationTime を使用して、コンピューター オブジェクトの LAPS パスワード有効期限日を確認します。パスワードが期限切れのコンピューターを特定し、それらのマシンでの LAPS CSE の機能を調査します。パスワードの経過期間を最長 30 日に設定するよう GPO を構成します", "status": "machine-draft" } }, "ADPWD-018": { "name": { "value": "Windows LAPS とレガシー LAPS の比較", "status": "machine-draft" }, "description": { "value": "Windows LAPS (Windows Server 2019 以降および 2023 年 4 月の更新プログラム適用済みの Windows 10/11 に組み込み) は、パスワードの暗号化、パスワード履歴、DSRM パスワード管理など、レガシー LAPS に対する改善を提供します。組織は、強化されたセキュリティ機能のためにレガシー LAPS から Windows LAPS へ移行すべきです", "status": "machine-draft" }, "recommendedValue": { "value": "パスワード暗号化を有効にして Windows LAPS が展開されている。レガシー LAPS からの移行が完了している", "status": "machine-draft" }, "remediationSteps": { "value": "msLAPS-Password 属性 (Windows LAPS) と ms-Mcs-AdmPwd 属性 (レガシー LAPS) を確認して、どの LAPS バージョンが展開されているかを検証します。Windows LAPS への移行を計画します。Windows LAPS の属性のために AD スキーマを更新します。暗号化を有効にして Windows LAPS GPO 設定を展開します。移行後にレガシー LAPS コンポーネントを廃止します", "status": "machine-draft" } }, "ADPWD-019": { "name": { "value": "Azure AD Password Protection", "status": "machine-draft" }, "description": { "value": "Azure AD Password Protection は、プロキシと DC エージェントのコンポーネントを展開することで、禁止パスワードの強制をオンプレミス AD にまで拡張します。Microsoft がキュレーションするグローバル禁止リストとオプションのカスタム禁止リストに一致するパスワードをブロックし、ユーザーが脆弱と分かっているパスワードを選択するのを防ぎます", "status": "machine-draft" }, "recommendedValue": { "value": "カスタム禁止パスワード リストを構成した上で、強制モードで Azure AD Password Protection が展開されている", "status": "machine-draft" }, "remediationSteps": { "value": "すべてのドメインコントローラーに Azure AD Password Protection のプロキシ サービスと DC エージェントを展開します。組織固有の用語を含むカスタム禁止パスワード リストを Azure AD に構成します。モードを強制 (監査ではなく) に設定します。イベント ログと Azure AD レポートを通じて、パスワード変更の拒否を監視します", "status": "machine-draft" } }, "ADPWD-020": { "name": { "value": "AD 内の BitLocker 回復キー", "status": "machine-draft" }, "description": { "value": "Active Directory に格納された BitLocker 回復キーは、ディスク暗号化が適切に展開され、回復キーが利用可能であることを確認するためにインベントリ化すべきです。回復キーの存在は、どのマシンで BitLocker が有効になっているかも示し、暗号化のカバレッジへの可視性をもたらします", "status": "machine-draft" }, "recommendedValue": { "value": "すべてのワークステーションとラップトップの BitLocker 回復キーが AD に存在する。回復キーへのアクセスが承認された管理者に制限されている", "status": "machine-draft" }, "remediationSteps": { "value": "Get-ADObject -Filter {objectClass -eq 'msFVE-RecoveryInformation'} -SearchBase 'DC=domain,DC=com' を使用して、AD の BitLocker 回復情報オブジェクトを照会します。コンピューター インベントリと相互参照して、BitLocker を持たないマシンを特定します。回復キー オブジェクトの ACL を確認し、承認された管理者のみが読み取れるようにします", "status": "machine-draft" } }, "ADPWD-021": { "name": { "value": "アカウント ロックアウトのしきい値", "status": "machine-draft" }, "description": { "value": "アカウント ロックアウトのしきい値は、アカウントがロックされるまでの失敗ログオン試行回数を定義します。しきい値が高すぎる (またはゼロ、つまりロックアウトなし) と広範なパスワード スプレーを許してしまい、しきい値が低すぎると容易なサービス拒否を可能にします", "status": "machine-draft" }, "recommendedValue": { "value": "ロックアウトのしきい値を 5 ~ 10 回の失敗試行とする", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy で構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > アカウント ロックアウトのポリシー > 「アカウントのロックアウトのしきい値」= 5 ~ 10 回。値 0 はロックアウトを完全に無効にするため避けるべきです。組織のニーズに基づいてセキュリティと使いやすさのバランスをとります", "status": "machine-draft" } }, "ADPWD-022": { "name": { "value": "ロックアウトの監視期間", "status": "machine-draft" }, "description": { "value": "ロックアウトの監視期間は、失敗ログオン試行がロックアウトのしきい値に向けてカウントされる時間帯を定義します。監視期間が短すぎると、攻撃者はパスワード スプレーの試行を時間をかけて分散させ、ロックアウトの発動を回避できます", "status": "machine-draft" }, "recommendedValue": { "value": "ロックアウト期間に等しいかそれを超える 15 ~ 30 分の監視期間", "status": "machine-draft" }, "remediationSteps": { "value": "Default Domain Policy で構成します: コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > アカウント ポリシー > アカウント ロックアウトのポリシー > 「ロックアウト カウンターのリセット」= 15 ~ 30 分。攻撃者がスプレー試行の間にカウンターの経過を待つのを防ぐため、この値がロックアウト期間以上であることを確認します", "status": "machine-draft" } } } |