@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ks: <https://comcomponent.com/vocab/> .

<https://comcomponent.com/blog/ntlm-kerberos-explained/#article>
    schema:about <https://comcomponent.com/knowledge/ntlm/>, <https://comcomponent.com/knowledge/kerberos/> ;
    schema:mentions <https://comcomponent.com/knowledge/negotiate/>, <https://comcomponent.com/knowledge/spn/>, <https://comcomponent.com/knowledge/kdc/>, <https://comcomponent.com/knowledge/tgt/>, <https://comcomponent.com/knowledge/kerberos-service-ticket/>, <https://comcomponent.com/knowledge/nt-hash/>, <https://comcomponent.com/knowledge/mutual-authentication/>, <https://comcomponent.com/knowledge/ntlm-relay-attack/>, <https://comcomponent.com/knowledge/pass-the-hash/>, <https://comcomponent.com/knowledge/smb-signing/>, <https://comcomponent.com/knowledge/ntlmv1/>, <https://comcomponent.com/knowledge/ntlmv2/>, <https://comcomponent.com/knowledge/domain-controller/>, <https://comcomponent.com/knowledge/active-directory/>, <https://comcomponent.com/knowledge/kerberos-delegation/>, <https://comcomponent.com/knowledge/workgroup/>, <https://comcomponent.com/knowledge/domain-account/>, <https://comcomponent.com/knowledge/tryipspn/>, <https://comcomponent.com/knowledge/kerberos-time-sync/>, <https://comcomponent.com/knowledge/restrict-ntlm/>, <https://comcomponent.com/knowledge/ntlm-operational-log/>, <https://comcomponent.com/knowledge/iakerb/>, <https://comcomponent.com/knowledge/local-kdc/>, <https://comcomponent.com/knowledge/smb-ntlm-block/> .

<https://comcomponent.com/knowledge/ntlm/> a skos:Concept ;
    skos:prefLabel "NTLM"@ja ;
    skos:definition "パスワードの一方向ハッシュを使ったチャレンジ/レスポンス方式の認証プロトコル群(LANMAN・NTLMv1・NTLMv2を含む)。相互認証を持たず、サーバーが本物であると仮定できる環境向けに設計されている。"@ja ;
    skos:altLabel "NTLM認証"@ja ;
    skos:altLabel "Windows Challenge/Response" ;
    skos:altLabel "NTLM Security Support Provider" ;
    ks:mayCause <https://comcomponent.com/knowledge/pass-the-hash/> ;
    ks:uses <https://comcomponent.com/knowledge/ntlmv1/> ;
    ks:uses <https://comcomponent.com/knowledge/ntlmv2/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/restrict-ntlm/> .

<https://comcomponent.com/knowledge/kerberos/> a skos:Concept ;
    skos:prefLabel "Kerberos"@ja ;
    skos:definition "チケットによる一度だけの本人確認と相互認証を提供する認証プロトコル。Windows ServerはKerberos version 5と、公開鍵認証・認可データの転送・委任のための拡張を実装する。"@ja ;
    skos:altLabel "Kerberos version 5" ;
    skos:altLabel "Kerberos認証"@ja ;
    ks:requires <https://comcomponent.com/knowledge/spn/> ;
    ks:requires <https://comcomponent.com/knowledge/kdc/> ;
    ks:uses <https://comcomponent.com/knowledge/tgt/> ;
    ks:uses <https://comcomponent.com/knowledge/kerberos-service-ticket/> ;
    ks:implements <https://comcomponent.com/knowledge/mutual-authentication/> ;
    ks:prevents <https://comcomponent.com/knowledge/ntlm-relay-attack/> ;
    ks:succeeds <https://comcomponent.com/knowledge/ntlm/> ;
    ks:requires <https://comcomponent.com/knowledge/kerberos-time-sync/> ;
    ks:implements <https://comcomponent.com/knowledge/kerberos-delegation/> ;
    ks:requires <https://comcomponent.com/knowledge/active-directory/> ;
    ks:recommendedFor <https://comcomponent.com/knowledge/smb-signing/> .

<https://comcomponent.com/knowledge/negotiate/> a skos:Concept ;
    skos:prefLabel "Negotiate"@ja ;
    skos:definition "KerberosとNTLMのどちらかを選択するセキュリティパッケージ。認証に関わるシステムのいずれかがKerberosを使えない場合を除き、Kerberosを選択する。"@ja ;
    skos:altLabel "Negotiateセキュリティパッケージ"@ja ;
    skos:altLabel "SPNEGO" ;
    ks:uses <https://comcomponent.com/knowledge/kerberos/> ;
    ks:uses <https://comcomponent.com/knowledge/ntlm/> .

<https://comcomponent.com/knowledge/spn/> a skos:Concept ;
    skos:prefLabel "SPN"@ja ;
    skos:definition "KDCが接続先のサービスアカウントを特定するために使う名前。登録されていなければ、KDCはそのサービスのサービスチケットを発行できない。"@ja ;
    skos:altLabel "サービスプリンシパル名"@ja ;
    skos:altLabel "Service Principal Name" .

<https://comcomponent.com/knowledge/kdc/> a skos:Concept ;
    skos:prefLabel "KDC"@ja ;
    skos:definition "ドメインコントローラー上で動作し、Active Directory Domain Servicesのデータベースをセキュリティアカウントデータベースとして使う、Kerberosのチケット発行サービス。"@ja ;
    skos:altLabel "鍵配布センター"@ja ;
    skos:altLabel "Key Distribution Center" ;
    skos:broader <https://comcomponent.com/knowledge/kerberos/> ;
    ks:requires <https://comcomponent.com/knowledge/active-directory/> .

<https://comcomponent.com/knowledge/active-directory/> a skos:Concept ;
    skos:prefLabel "Active Directory(AD DS)"@ja ;
    skos:definition "オンプレミスのWindowsドメインを構成するディレクトリサービス。"@ja ;
    skos:altLabel "AD DS" ;
    skos:altLabel "Active Directory Domain Services" ;
    skos:altLabel "オンプレAD"@ja .

<https://comcomponent.com/knowledge/tgt/> a skos:Concept ;
    skos:prefLabel "TGT(チケット許可チケット)"@ja ;
    skos:definition "AS交換でKDCが発行する、krbtgtアカウントの長期鍵で暗号化されたチケット。クライアントは中身を読めず、TGS交換でサービスチケットを要求する際に提示する。"@ja ;
    skos:altLabel "Ticket Granting Ticket" ;
    skos:broader <https://comcomponent.com/knowledge/kerberos/> .

<https://comcomponent.com/knowledge/kerberos-service-ticket/> a skos:Concept ;
    skos:prefLabel "Kerberosサービスチケット"@ja ;
    skos:definition "TGS交換でKDCが発行する、接続先サービスの長期鍵で暗号化されたチケット。宛先サービスの長期鍵でしか復号できないため、別のサービスへ持ち込んでも使えない。"@ja ;
    skos:altLabel "サービスチケット"@ja ;
    skos:broader <https://comcomponent.com/knowledge/kerberos/> ;
    ks:requires <https://comcomponent.com/knowledge/spn/> .

<https://comcomponent.com/knowledge/mutual-authentication/> a skos:Concept ;
    skos:prefLabel "相互認証"@ja ;
    skos:definition "接続の両端が、相手が名乗るとおりの相手であることを検証し合う仕組み。Kerberosは提供するが、NTLMは提供しない。"@ja ;
    skos:altLabel "Mutual Authentication" .

<https://comcomponent.com/knowledge/ntlm-relay-attack/> a skos:Concept ;
    skos:prefLabel "NTLMリレー攻撃"@ja ;
    skos:definition "攻撃者が被害者とサーバーの間でNTLMのチャレンジ/レスポンスをそのまま中継し、被害者になりすます攻撃。応答が宛先を縛らないNTLMの弱点を突く。"@ja ;
    skos:altLabel "NTLM Relay Attack" ;
    skos:altLabel "SMBリレー攻撃"@ja .

<https://comcomponent.com/knowledge/pass-the-hash/> a skos:Concept ;
    skos:prefLabel "Pass-the-Hash"@ja ;
    skos:definition "盗んだパスワードのハッシュ(NTハッシュ)を使って、平文パスワードを知らないままNTLM認証を通過する攻撃。"@ja ;
    skos:altLabel "Pass-the-Hash攻撃"@ja ;
    ks:requires <https://comcomponent.com/knowledge/nt-hash/> .

<https://comcomponent.com/knowledge/smb-signing/> a skos:Concept ;
    skos:prefLabel "SMB署名"@ja ;
    skos:definition "SMBの全メッセージにセッション鍵由来の署名(メッセージ全体のハッシュと送信者・受信者の識別情報を含む)を付け、改ざんとリレー攻撃を検知する仕組み。Windows 11 24H2/Windows Server 2025で既定値が強化された。"@ja ;
    skos:altLabel "SMB Signing" ;
    ks:prevents <https://comcomponent.com/knowledge/ntlm-relay-attack/> .

<https://comcomponent.com/knowledge/workgroup/> a skos:Concept ;
    skos:prefLabel "ワークグループ構成"@ja ;
    skos:definition "Active Directoryドメインに参加しない、Kerberosの土俵にないWindowsのネットワーク構成。この構成のシステムのWindows認証には依然としてNTLMが使われ、使われなければならない。"@ja ;
    skos:altLabel "Workgroup" ;
    ks:incompatibleWith <https://comcomponent.com/knowledge/kerberos/> ;
    ks:requires <https://comcomponent.com/knowledge/ntlm/> .

<https://comcomponent.com/knowledge/domain-controller/> a skos:Concept ;
    skos:prefLabel "ドメインコントローラー"@ja ;
    skos:definition "Active Directoryのディレクトリサービスを提供し、KDCの機能やNTLMのパススルー認証の相手を担うサーバー。"@ja ;
    skos:altLabel "DC" ;
    ks:requires <https://comcomponent.com/knowledge/smb-signing/> .

<https://comcomponent.com/knowledge/kerberos-time-sync/> a skos:Concept ;
    skos:prefLabel "Kerberosの時刻同期要件"@ja ;
    skos:definition "Kerberosの事前認証が要求する、クライアントとKDCの時刻差の許容範囲(既定5分)。範囲を超えると事前認証が通らず、NTLMへの切り替えではなくKerberosのエラーとして認証が失敗する。"@ja ;
    skos:altLabel "SkewTime" .

<https://comcomponent.com/knowledge/ntlmv2/> a skos:Concept ;
    skos:prefLabel "NTLMv2"@ja ;
    skos:definition "NTLMプロトコル群の第2版。応答鍵をHMAC-MD5でNTハッシュから導出し、HMACで応答(NTProofStr)を計算する。非推奨だが現在も動作する。"@ja ;
    skos:altLabel "NTLM バージョン2"@ja ;
    skos:broader <https://comcomponent.com/knowledge/ntlm/> ;
    ks:succeeds <https://comcomponent.com/knowledge/ntlmv1/> ;
    ks:uses <https://comcomponent.com/knowledge/nt-hash/> ;
    ks:mayCause <https://comcomponent.com/knowledge/pass-the-hash/> .

<https://comcomponent.com/knowledge/ntlmv1/> a skos:Concept ;
    skos:prefLabel "NTLMv1"@ja ;
    skos:definition "NTLMプロトコル群の第1版。Windows 11 バージョン24H2およびWindows Server 2025で削除された。"@ja ;
    skos:altLabel "NTLM バージョン1"@ja ;
    skos:broader <https://comcomponent.com/knowledge/ntlm/> .

<https://comcomponent.com/knowledge/nt-hash/> a skos:Concept ;
    skos:prefLabel "NTハッシュ"@ja ;
    skos:definition "MD4(UNICODE(パスワード))として計算される、パスワードの一方向ハッシュ。NTLM認証の資格情報の出発点で、NTLMv2の応答鍵もここから導出される。"@ja ;
    skos:altLabel "NTOWF" ;
    skos:altLabel "MD4ハッシュ"@ja .

<https://comcomponent.com/knowledge/smb-ntlm-block/> a skos:Concept ;
    skos:prefLabel "SMBクライアント側のNTLMブロック"@ja ;
    skos:definition "SMBクライアントがリモートへの送信接続でNTLM認証をブロックする、Windows Server 2025/Windows 11 バージョン24H2以降の機能。接続先のSMBサーバーがKerberosまたはPKU2Uを使えることが前提。"@ja ;
    skos:altLabel "Block NTLM on SMB" ;
    ks:prevents <https://comcomponent.com/knowledge/pass-the-hash/> .

<https://comcomponent.com/knowledge/kerberos-delegation/> a skos:Concept ;
    skos:prefLabel "Kerberosの委任"@ja ;
    skos:definition "サービスがクライアントの代理として別のサービスへ接続する仕組み。無制約の委任・制約付き委任・リソースベースの制約付き委任(RBCD)がある。NTLMが提供するのはローカルでの偽装に必要な認可情報まで。"@ja ;
    skos:altLabel "Delegation" ;
    skos:altLabel "制約付き委任"@ja ;
    skos:altLabel "リソースベースの制約付き委任"@ja ;
    skos:broader <https://comcomponent.com/knowledge/kerberos/> .

<https://comcomponent.com/knowledge/restrict-ntlm/> a skos:Concept ;
    skos:prefLabel "「NTLMを制限する」ポリシー群"@ja ;
    skos:definition "送信NTLMトラフィック・受信NTLMトラフィック・ドメイン内NTLM認証を、監査から拒否まで段階的に制御できるセキュリティポリシー群。"@ja ;
    skos:altLabel "Restrict NTLM" ;
    skos:altLabel "ネットワークセキュリティ: NTLMを制限する"@ja ;
    ks:verifiedBy <https://comcomponent.com/knowledge/ntlm-operational-log/> .

<https://comcomponent.com/knowledge/ntlm-operational-log/> a skos:Concept ;
    skos:prefLabel "NTLM/Operationalログ"@ja ;
    skos:definition "NTLM監査の記録先ログ。ドメインコントローラーのイベント8004、メンバーサーバーの8003、クライアントの8001などが記録され、対応するセキュリティ監査イベントポリシーは存在しない。"@ja ;
    skos:altLabel "Microsoft-Windows-NTLM/Operational" .

<https://comcomponent.com/knowledge/iakerb/> a skos:Concept ;
    skos:prefLabel "IAKerb"@ja ;
    skos:definition "ドメインコントローラーへの到達性の問題を解くためのプロキシ対応Kerberos拡張。NTLM廃止フェーズ2(2026年後半予定)で提供される機能。"@ja .

<https://comcomponent.com/knowledge/local-kdc/> a skos:Concept ;
    skos:prefLabel "ローカルKDC"@ja ;
    skos:definition "ローカルアカウント認証にもKerberosを使えるようにする機能。NTLM廃止フェーズ2(2026年後半予定)で提供される機能で、対応するWindows同士でのみ効く。"@ja ;
    skos:altLabel "Local KDC" .

<https://comcomponent.com/knowledge/tryipspn/> a skos:Concept ;
    skos:prefLabel "TryIPSPN"@ja ;
    skos:definition "SPNのホスト名としてIPアドレスを使えるようにするクライアント側のレジストリ設定(TryIPSPN)。DNS名に変更できない場合の最後の手段として、IPアドレスのSPNを手動登録する。"@ja ;
    skos:altLabel "Kerberos over IP" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/negotiate/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/kerberos/> ;
    schema:description "Negotiateは、認証に関わるシステムのいずれかがKerberosを使えない場合を除き、Kerberosを選択する"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/secauthn/microsoft-ntlm> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/negotiate/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "認証に関わるシステムのいずれかがKerberosを使えない場合、NegotiateはNTLMにフォールバックする"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/secauthn/microsoft-ntlm> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/spn/> ;
    schema:description "TGS交換では接続先のSPNをKDCに提示してサービスチケットを要求するため、SPNが引けなければ成立しない"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc772815(v=ws.10)> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/kdc/> ;
    schema:description "認証・チケット発行のすべてがKDC(鍵配布センター)とのAS/TGS/AP交換の上に成り立つ"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kdc/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/active-directory/> ;
    schema:description "KDCはドメインコントローラー上で動作し、Active Directory Domain Servicesのデータベースをセキュリティアカウントデータベースとして使う"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/tgt/> ;
    schema:description "AS交換で本人確認をしたクライアントに、krbtgtアカウントの長期鍵で暗号化されたTGTを発行する"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc772815(v=ws.10)> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/kerberos-service-ticket/> ;
    schema:description "TGS交換で、接続先サービスの長期鍵で暗号化されたサービスチケットを発行する"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc772815(v=ws.10)> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos-service-ticket/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/spn/> ;
    schema:description "KDCはSPNに対応するサービスアカウントを探し、そのアカウントの長期鍵でチケットを暗号化するため、SPNが未登録だとチケットを発行できない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/secauthn/microsoft-ntlm> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:implements ;
    rdf:object <https://comcomponent.com/knowledge/mutual-authentication/> ;
    schema:description "Kerberosでは接続の両端が相手が名乗るとおりの相手であることを検証できる。NTLMはこれを提供せず、サーバーが本物であると仮定できる環境向けに設計されている"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/ntlm-relay-attack/> ;
    schema:description "NTLMのレスポンスには「誰に対して認証しているか」を縛る仕組みがなく、クライアントは応答が本物のサーバー宛かを確かめられない"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-10/security/threat-protection/security-policy-settings/network-security-restrict-ntlm-outgoing-ntlm-traffic-to-remote-servers> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/pass-the-hash/> ;
    schema:description "NTLMの資格情報はパスワードの一方向ハッシュそのものであり、認証に必要なのはこのハッシュであって平文パスワードではない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/secauthn/microsoft-ntlm> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/smb-signing/> ;
    rdf:predicate ks:prevents ;
    rdf:object <https://comcomponent.com/knowledge/ntlm-relay-attack/> ;
    schema:description "SMB署名はメッセージ全体のハッシュと送信者・受信者の身元を含む署名を付けるため、署名を要求する相手にはリレーが成立しない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/storage/file-server/smb-signing-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:prevents ;
    rdf:object <https://comcomponent.com/knowledge/ntlm-relay-attack/> ;
    schema:description "サービスチケットは宛先サービスの長期鍵で暗号化されているため、別のサービスへ持ち込んでも復号できず中継が成立しない"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc772815(v=ws.10)> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/workgroup/> ;
    rdf:predicate ks:incompatibleWith ;
    rdf:object <https://comcomponent.com/knowledge/kerberos/> ;
    schema:description "ワークグループ構成やドメインコントローラー以外でのローカルログオンは、そもそもActive Directoryの外にありKDCが存在しないため、Kerberosは成立しない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/ntlm-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/workgroup/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "ワークグループのメンバーとして構成されたシステムの認証と、ドメインコントローラー以外でのローカルログオン認証には、依然としてNTLMが使われ使われなければならない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/ntlm-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/domain-controller/> ;
    schema:description "ドメインアカウントでの認証では、リソースサーバーは自分でハッシュを持たないため、認証のたびにドメインコントローラーへ問い合わせる(パススルー認証)が必要になる。ローカルアカウントならこの依存はない"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/ntlm-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:succeeds ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "更新可能なセッションチケットがNTLMの毎回のパススルー認証を置き換え、サーバーはPACの検証が必要な場合を除きドメインコントローラーへ行く必要がなくなる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/kerberos-time-sync/> ;
    schema:description "事前認証のタイムスタンプが既定5分の許容差を超えると、Kerberosはエラーとして失敗する(NTLMへの静かな切り替えとは別の現象)"@ja ;
    ks:evidence <https://learn.microsoft.com/troubleshoot/windows-server/windows-security/kerberos-protocol-registry-kdc-configuration-keys> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlmv2/> ;
    rdf:predicate ks:succeeds ;
    rdf:object <https://comcomponent.com/knowledge/ntlmv1/> ;
    schema:description "NTLMv2は応答鍵をHMAC-MD5でNTハッシュから導出しHMACで応答を計算する後継バージョンだが、NTLMv1・v2ともに非推奨対象に含まれる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/whats-new/deprecated-features> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/ntlmv1/> ;
    schema:description "NTLMはLANMAN・NTLMv1・NTLMv2を含む認証プロトコルの一群であり、NTLMv1はその1つ"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/ntlm-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/ntlmv2/> ;
    schema:description "いまのWindowsが実際に使うのは、NTLMプロトコル群のうちNTLMv2"@ja ;
    ks:evidence <https://learn.microsoft.com/openspecs/windows_protocols/ms-nlmp/5e550938-91d4-459f-b67d-75d70009e3f3> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlmv2/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/nt-hash/> ;
    schema:description "応答鍵NTOWFv2は、HMAC_MD5(MD4(UNICODE(パスワード)), 大文字化したユーザー名+ドメイン名)としてNTハッシュから導出される"@ja ;
    ks:evidence <https://learn.microsoft.com/openspecs/windows_protocols/ms-nlmp/5e550938-91d4-459f-b67d-75d70009e3f3> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlmv2/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/pass-the-hash/> ;
    schema:description "計算がHMACベースで複雑になっても出発点はNTハッシュのままなので、NTLMv2に対してもPass-the-Hashは成立する"@ja ;
    ks:evidence <https://learn.microsoft.com/openspecs/windows_protocols/ms-nlmp/5e550938-91d4-459f-b67d-75d70009e3f3> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/smb-ntlm-block/> ;
    rdf:predicate ks:prevents ;
    rdf:object <https://comcomponent.com/knowledge/pass-the-hash/> ;
    schema:description "SMBクライアント側のNTLMブロックは、悪意あるサーバーへNTLM要求を送らせる手口を防ぎ、総当たり・クラッキング・Pass-the-Hash攻撃に対抗する"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/storage/file-server/smb-ntlm-blocking> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:implements ;
    rdf:object <https://comcomponent.com/knowledge/kerberos-delegation/> ;
    schema:description "Kerberosは、フロントエンドサービスがクライアントの代理としてバックエンドサービスへ接続する委任をサポートする"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/restrict-ntlm/> ;
    schema:description "NTLMの利用は「ネットワークセキュリティ: NTLMを制限する」系のポリシー(監査・拒否・例外リスト)で構成する"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-10/security/threat-protection/security-policy-settings/network-security-restrict-ntlm-outgoing-ntlm-traffic-to-remote-servers> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/restrict-ntlm/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/ntlm-operational-log/> ;
    schema:description "Restrict NTLMの監査・拒否イベントはNTLM/Operationalログ(イベント8001・8003・8004)に記録される"@ja ;
    ks:evidence <https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/jj865682(v=ws.10)> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/ntlm-relay-attack/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "中継されたやり取りが使えるセッションになるのは、宛先が署名もチャネルバインディングも要求せずNTLMを受け付ける場合に限られる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/storage/file-server/smb-signing-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/pass-the-hash/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/nt-hash/> ;
    schema:description "Pass-the-Hashが成立するために攻撃者が必要とするのは盗んだNTハッシュだけで、平文パスワードは不要"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/secauthn/microsoft-ntlm> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/active-directory/> ;
    schema:description "Windows ServerのKerberos実装はActive Directoryドメインを前提とする"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/kerberos-authentication-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/iakerb/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "フェーズ2で提供予定のIAKerbは、ドメインコントローラーへ到達できない経路が原因のNTLM依存を減らすことを狙う"@ja ;
    ks:evidence <https://jpwinsup.github.io/blog/2024/08/22/ActiveDirectory/Authentication/retireNTLM/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/local-kdc/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/ntlm/> ;
    schema:description "フェーズ2で提供予定のローカルKDCは、ローカルアカウント認証でのNTLM依存を減らすことを狙うが、対応するWindows同士でしか効かない"@ja ;
    ks:evidence <https://jpwinsup.github.io/blog/2024/08/22/ActiveDirectory/Authentication/retireNTLM/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/kerberos/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/smb-signing/> ;
    schema:description "SMB署名のセッション鍵はパスワード由来のため、NTLMv2ではなくKerberosを使うことで鍵が強い状態で始まる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/storage/file-server/smb-signing-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/domain-controller/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/smb-signing/> ;
    schema:description "ドメインコントローラーは既定でSYSVOL・NETLOGONへ接続してくるすべての相手にSMB署名を要求する"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/storage/file-server/smb-signing-overview> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/tryipspn/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/spn/> ;
    schema:description "TryIPSPNを有効にしたクライアントは、IPアドレスをホスト名としたSPNをSetspnで手動登録することでIPアドレス宛のKerberosを成立させる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-server/security/kerberos/configuring-kerberos-over-ip> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .
