Microsoft Windows NT 4.0 を強化する

第 4 章 : Microsoft Windows NT 4.0 の強化

公開日: 2004年11月17日

Microsoft® Windows NT® 4.0 には、それ以降のバージョンの Microsoft Windows® オペレーティング システムに組み込まれている拡張セキュリティ機能の一部が備わっていません。 それでも、システムのセキュリティを大幅に向上させる、非常に便利な機能や技術が用意されています。 この章では、これらのトピックについて詳しく取り上げ、これらの機能を使用してワークステーションまたはサーバーの Windows NT 4.0 システムを強化する方法について説明します。

この章のトピックでは、次のことを行う方法の詳細が記載されています。

  • 初期オペレーティング システムおよび更新プログラムのベースラインのインストール

  • 起動シーケンスの強化

  • ディレクトリ サービス クライアント アドインのインストール

  • システム ポリシーおよびセキュリティ構成マネージャの使用

  • Windows NT LAN Manager (NTLM) の認証レベルの選択

  • 効果的なパスワード ポリシーの定義

  • アカウントおよびパスワードのロックアウトの使用

  • ファイル システムの強化

  • サービスの強化

  • その他の強化対策の実行

トピック

Windows NT ホストのセキュリティ設計
実装
ソリューションをテストする
要約

Windows NT ホストのセキュリティ設計

Windows NT 4.0 オペレーティング システムを強化するには、複数のトピックについて検討し、理解する必要があります。

初期オペレーティング システムおよび更新プログラムのベースラインをインストールする

Windows NT ベースのシステムを強化する最初の重要なステップとして、基本オペレーティング システムに最新のセキュリティ更新プログラムをインストールする必要があります。 この処理は、「第 6 章 : パッチ管理」に記載されているように、日常のパッチ管理プロセスの一部として実行するのが理想的です。このプロセスは、完全なインベントリ処理を行って各コンピュータのリビジョン レベルを特定することから開始します。 Microsoft Baseline Security Analyzer (MBSA) または Microsoft Systems Management Server (SMS) を使用すると、Windows NT 4.0 システムをローカルまたはリモートでスキャンできます。 インベントリの処理が完了したら、その結果を調査して、各 Windows NT システムに必要なベースライン更新がインストールされていることを確認します。 必要な更新には次のものがあります。

  • Windows NT 4.0 Service Pack 6a (SP6a)。Windows NT 4.0 用の最新サービス パックです。ユニットとしてインストールされるように設計された、回帰テスト済みの完全な修正プログラム セットが含まれています。

  • Windows NT 4.0 Service Pack 6a 以後のセキュリティ ロールアップ パッケージ (SRP)。 SRP には、オリジナルの SP6a のリリース後にリリースされた複数の更新プログラムが組み込まれており、Windows Update で提供される追加の更新プログラムに必要不可欠なパッケージです。

  • セキュリティ更新プログラムの最新セット。 マイクロソフトでは、SRP をリリースしたあと、Windows NT 4.0 用の SRP または Service Pack のリリースを行っていませんが、オペレーティング システムの一部などの個々のコンポーネント、Microsoft Internet Explorer、ルーティングとリモート アクセス サービス (RRAS) やインターネット インフォメーション サービス (IIS) などのアドオン ユーティリティは更新しています。 セキュリティ更新プログラムの最新の一覧は、Microsoft TechNet から入手できます。また、Windows Update から入手できるセキュリティ更新プログラムの一覧を手動で確認することもできます。

  • Internet Explorer の最新バージョン。 最新バージョンは、Internet Explorer 6.0 Service Pack 1 (SP1) です。このバージョンでは、Windows NT に付属して提供されたバージョンの Internet Explorer 以降にリリースされた、数百種類のセキュリティ関連の修正および改良が組み込まれています。 それぞれの環境に応じて、マイクロソフト Web サイトから Internet Explorer を直接ダウンロードすることも、CD-ROM 版を注文することも、または Internet Explorer 管理者キットを使用して複数のコンピュータにインストールすることもできます。

起動シーケンスを強化する

必須のセキュリティ更新プログラム セットを適切かつ完全にインストールできたら、次に、起動時にシステムで利用できる保護レペルを上げる必要があります。 この保護を行うには 2 つの手順を実行します。1 つは、起動メニューのタイムアウトをゼロにして、攻撃者が別のオペレーティング システムで起動するのを難しくします。もう 1 つは、組み込まれている Syskey ユーティリティを使用して、セキュリティ アカウント マネージャ (SAM) データベースに格納されている情報を暗号化します。

Windows NT サーバーでは、ユーザー アカウントのパスワードから派生した情報などのユーザー アカウント情報は、アクセス制御および難読化機能で保護されたレジストリの安全な部分に格納されます。 レジストリ内のアカウント情報にアクセスできるのは、Administrators グループのメンバのみです。 Windows NT サーバーでは、他のオペレーティング システムと同様に、管理者がシステム内の全リソースにアクセスできます。 セキュリティ機能の強化を望むインストール環境に、アカウント パスワードの派生情報を強固に暗号化する機能を採用すると、セキュリティ レベルが上がり、管理者はレジストリ プログラミング インターフェイスを使用してパスワードの派生情報に意図的または偶発的にアクセスできなくなります。 Syskey も、別のオペレーティング システムで起動して SAM ファイルにアクセスすることで、仕掛けられたさまざまな種類のオフライン攻撃から SAM データを保護します。

Syskey は、SAM データの暗号化に使用するランダムな暗号化キーを生成します。 SAM データが暗号化されると、キーが起動時に必ず読み込まれ、メモリ内にある SAM データのコピーの暗号化解除に使用されます。 図 4.1 を見るとわかるように、Syskey を機能させる場合、3 種類のモードがあります。。

  • モード 1 ([ローカルにスタートアップ キーを保存する]) では、暗号化キーは強固に暗号化され、ローカル コンピュータに保存されます。 起動時にキーの暗号化が解除されて読み込まれ、そのコンピュータは管理者が操作しなくても再起動できるようになります。

  • モード 2 ([パスワード スタートアップ]、および関連するテキスト フィールド) では、暗号化キーは、管理者が指定したパスワードで強固に暗号化されます。 起動処理を完了するには、起動時に管理者がコンソールにパスワードを入力する必要があります。 システムはパスワードが入力されるまで起動しません。

  • モード 3 ([フロッピー ディスクにスタートアップ キーを保存する]) では、ランダムな Syskey キーがフロッピー ディスクに保存されます。起動処理中に画面の指示に従って、このフロッピー ディスクを挿入する必要があります。 このフロッピー ディスクは、安全な場所に保管しておいてください。

図 4.1 Syskey のモード選択ダイアログ ボックス

Trey は、Windows NT を実行しているすべてのコンピュータに Syskey 保護機能を実装することにしました (Windows 2000、Microsoft Windows Server™ 2003、および Windows XP では、Syskey が既定で有効になっています)。 Trey のほとんどのサーバー、およびすべてのワークステーションは、Syskey をモード 1 で使用するように設定されました。Trey が広範囲にわたってこのモードを選択したのは、これにより安全性と利便性がバランスよく実現されるためです。 高付加価値サーバーについては、モード 2 が設定されています。再起動するたびに管理者がコンピュータにアクセスしてパスワードを入力する必要があります。 モード 3 は、保護対象のコンピュータごとに起動用のフロッピー ディスクを安全に保管する必要があるため、Trey ではこのモードをどのシステムにも設定しませんでした。

ディレクトリ サービス クライアント アドインをインストールする

Windows NT 4.0 システムが完全に参加できるのは Windows NT ドメインのみです。Microsoft Active Directory® ディレクトリ サービス ドメインがある場合、Windows 98 および Windows NT は、ネットワーク基本入出力システム (NetBIOS) インターフェイスを介してのみ、そのドメインにネイティブに参加することができます。 Windows 2000 および Windows Server 2003 では、Windows NT のプライマリ ドメイン コントローラ (PDC) をエミュレートすることで、NetBIOS との互換性を実現しています。 Active Directory では双方向に推移する信頼関係を確立できますが、Windows NT 4.0 システムでは、Active Directory ドメイン コントローラまたは Windows NT BDC を使用している場合でも、明示的な一方向の信頼関係しか利用できません。

Windows NT 形式のドメインを維持しなくても、ディレクトリ サービス クライアント (DSClient) アドインを追加すれば、Windows NT および Windows 98 を実行しているコンピュータでも Active Directory のドメインに参加できます。 DSClient には、システムを Active Directory ドメインに参加させる機能が備わっています。 このソフトウェアを追加すると、フォレスト内で推移可能な信頼関係を利用する機能など、Active Directory の多数の機能をシステムで使用できるようになります。 推移可能な信頼関係により、承認されたユーザーはフォレスト内のドメインにある適切なリソースにアクセスすることができます。 DSClient 2003 の更新プログラムは、Windows NT 4.0 SP6a および Internet Explorer 6 SP1 がインストールされている環境で機能します。Windows 2000 に付属の DSClient にも SP6 は必要ですが、Internet Explorer は 4.01 以降を使用できます (Windows 98 で DSClient を使用するための要件については、「第 5 章 : Microsoft Windows 98 の強化」を参照してください)。

DSClient をインストールしても、Active Directory のすべての機能がサポートされるわけではありません。特に、Kerberos 認証、グループ ポリシーの適用、認証用のサービスまたはユーザー プリンシパル名 (UPN) の使用はサポートされません。 サポートされる Active Directory の機能は次のとおりです。

  • Active Directory Service Interfaces (ADSI)。 ADSI は、Active Director にアクセスするスクリプトおよびプログラムを作成するための一般的なプログラミング API です。 ADSI を使用すると、Windows NT ではスクリプト化できなかった膨大な量のディレクトリ操作をスクリプト化することができます。

  • Distributed File System (DFS) フォールト トレランス クライアント。 DFS フォールト トレラントおよびフェールオーバー ファイル共有により、Active Directory で統合され分散されたファイル共有のリソースが提供されます。

  • Active Directory の Windows アドレス帳 (WAB) プロパティ ページ。 [検索] メニューからアクセスするユーザー オブジェクト ページには、承認されたユーザーがユーザー オブジェクトのプロパティ (住所や電話番号など) を更新できる機能があります。

  • NTLM バージョン 2 認証。 NTLM に備わる強化された認証機能により、Kerbero よりも高いレベルの認証セキュリティを使用できます。

  • サイトの認知。 DSClient を使用しているシステムでは、Active Directory のサイトが認知されると、ローカル サイトでドメイン コントローラが使用されます。ドメイン ネーム システム (DNS) が正しく設定され、サイトが Active Directory に正しく登録されている場合は、パスワード変更操作にもドメイン コントローラを使用できます。 DSClient がログオンおよびパスワード変更動作に与える影響については、マイクロソフト サポート技術情報 (KB) 249841「Windows 95 および Windows 98 ディレクトリ サービス クライアントが AD サイト情報を使用する方法」 https://support.microsoft.com/kb/249841 を参照してください。

  • Active Directory 内のオブジェクトの検索。 ユーザーは、[検索] メニューを使用して Active Directory 内のプリンタとユーザーを検索できます。

  • PDC への依存の低減。 パスワード変更作業のために、クライアントからドメイン内のあらゆるドメイン コントローラに接続できます。

システム ポリシーおよびセキュリティ構成マネージャを使用する

システム ポリシーとは、マイクロソフトが Windows 95 および Windows NT 4.0 で初めて採用した特殊な構成管理手段です。 システム ポリシー自体がシステムの安全性を高めることはありませんが、他のセキュリティ対策を強化して、指定したリソースへのアクセスを制限することができます。これにより、ユーザーが意図的または偶発的にポリシーおよび制限を回避できなくなる可能性が高まります。 システム ポリシーが正しく設計されて適用された場合、古いシステムの完全性を保証する重要な要素となります。 実際、この機能はとても有用なため、マイクロソフトではこれをグループ ポリシー オブジェクト (GPO) 機能に拡張して Windows 2000 以降のシステムに搭載しました。

システム ポリシーは、HKEY_CURRENT_USER レジストリ ハイプおよび HKEY_LOCAL_MACHINE レジストリ ハイブに適用される 1 つ以上の制限の集まりです。 ユーザーがコンピュータにログオンすると、一連のポリシーが、ユーザー名、ドメイン内のグローバル グループ メンバシップ、およびコンピュータ固有のポリシーに基づいて次々とチェックされ、検出された場合は適用されます。 システム ポリシーは、Windows NT ドメインの実装で使用するためのもので、ユーザー プロファイルなどの他のドメイン認知機能を補完します。

システム ポリシーとユーザー プロファイルの違いを理解することは重要です。 ユーザー プロファイルとは、ユーザー固有の構成ディレクトリ、ファイル、ショートカット、および HKEY_CURRENT_USER に読み込まれるレジストリ ハイプの集まりであり (Windows NT では Ntuser.dat、Windows 98 では User.dat)、デスクトップの外観、ブラウザのお気に入りやブックマークなど、オペレーティング システムおよびアプリケーション双方のユーザー設定オプションを制御します。 システム ポリシーとは、アクティブ ユーザーのプロファイルが検出されて読み込まれたあとコンピュータに適用されるレジストリ エントリの追加セットであり、現在のユーザーが使用することを許可されないオペレーティング システムの特定機能を指定します。

システム ポリシーを使用する

マイクロソフトでは、ユーザー プロファイルとシステム ポリシーの概要、それぞれの使用方法、およびこれらを併用する方法について詳しく説明したホワイトペーパー「Guide to Microsoft Windows NT 4.0 Profiles and Policies」を用意しています (ホワイトペーパーの入手先については、「詳細情報」の項を参照してください)。

システム ポリシーを利用すると、以前のバージョンのデスクトップおよびユーザー インターフェイスを制御する多数の機能を利用できるようになります。 Windows 2000 のグループ ポリシーについてすでに精通している場合は、システム ポリシーの基本機能についてもすぐに理解できます。 通常は、次のことを実行できます。

  • ユーザーのログオンが許可される前に表示されるバナーまたは免責事項 (法規上適用される利用規定の通知など) を指定する。

  • ログオン ダイアログ ボックスに、前回利用したユーザーの名前などセキュリティ関連情報やシャットダウン ボタンを表示しないようにする。

  • ログオン スクリプト、キャッシュした移動プロファイル、低速回線接続の検出、スタート バナー、開始画面のヒントなどの動作を指定する。

  • [スタート] メニューのさまざまな共有フォルダ (スタートアップ フォルダなど) の場所を指定して、特定のアプリケーションがログオン時に必ず起動するようにする。

  • デスクトップの外観 (背景、アイコン、色、[スタート] メニューで使用可能なコマンド) を制限する。

  • シェル拡張、読み取り専用ファイルのアクセス日時の更新、ログオン ファイル名など、さまざまなファイル システム関連機能の動作を指定する。

  • ネットワーク リソースへのアクセス、使用可能なドライブ文字、およびエクスプローラのドライブ マップ機能を制限する。 詳細については、サポート技術情報 156698「システム ポリシー を使用しているネットワーク リソースへのアクセスを無効にします」 https://support.microsoft.com/kb/156698、および 220955「特定のドライブ文字を非表示をするために、システム ポリシーを使用します」 https://support.microsoft.com/kb/220955 を参照してください。

  • 非表示のファイル共有の作成を制限する。

  • プリンタ、簡易ネットワーク管理プロトコル (SNMP)、および RRAS の設定を指定して制限する。

  • 特定の実行可能ファイルを起動するシェルの機能を制限する。

  • レジストリ エディタとコマンド プロンプトの起動機能を制限する。

システム ポリシーは、グループ ポリシーと多くの点で類似していますが、気をつける必要のある制限や相違点がいくつか存在します。

  • システム ポリシーは階層構成ではありません。 Windows NT ドメイン モデルのフラットな構造を受け継いでいるため、Active Directory のグループ ポリシーのような、重なり合う優れたシステム ポリシーを定義できる柔軟性は備えていません。 ポリシーは、個々のユーザー、既定のユーザー、グループ、個々のコンピュータ、および既定のコンピュータに対して定義できます。 ポリシーの適用方法については、この章の後半で説明します。

  • システム ポリシーの変更は、該当するレジストリ ハイブに直接反映されます。 別のポリシーなどが原因で変更が加えられない限り、機能はそのままです。 Active Directory のグループ ポリシーでは、変更はレジストリの特定の部分に反映され、次に Windows により、これが通常のレジストリ エントリに上書きされます。 レジストリを直接書き換えるこのシステム ポリシーの機能は、"レジストリへの刺青" と呼ばれています。すなわち、システム ポリシーでは、管理されている設定の状態がまったく考慮されないということです。

システム ポリシーを作成するには、システム ポリシー エディタ (SPE) ユーティリティと管理用テンプレート ファイル (.adm) を使用します。 このテンプレート ファイルには、SPE のカテゴリとサブカテゴリ、特定の設定を制御するレジストリ キーと値、オプション、制限、適用可能な既定値が用意されています。 独自のテンプレート ファイルを作成して、SPE に付属の既定テンプレートに備わっていない特定のレジストリ設定を追加することもできます。

SPE を実行して設定グループを作成し、特定のユーザー、グループ、コンピュータ、あるいは既定のユーザーまたはコンピュータに関連付けると、Ntconfig.pol というポリシー ファイルが作成されます。 既定では、Windows NT を実行しているコンピュータは、ドメイン コントローラの NETLOGON 共有から適切なポリシー ファイルをダウンロードするように設定されています。 したがって、ポリシー ファイルを PDC のこの共有に配置する必要があります。この共有の内容は、ディレクトリ レプリケータ サービスを経由して BDC に複製されます。 Windows NT を実行しているコンピュータでは、ログオンに使用する有効なポリシーをすべて、ドメイン コントローラからダウンロードできます。 この動作は、ドメイン コントローラが Windows NT であっても、Windows 2000 または Windows Server 2003 であっても変わりません。これは、Windows 2000、Windows XP、および Windows Server 2003 のクライアントが、Active Directory に統合された GPO を優先し、NETLOGON 共有のポリシー ファイルを無視するためです。

システム ポリシーは、次のような手順で Windows NT で読み込まれ、適用されます。

  1. ユーザー固有のポリシーがある場合は、そのポリシーが読み込まれ、レジストリが変更されます。このあと、ポリシーの処理は手順 4 に進みます。

  2. 既定のユーザー ポリシーがある場合は、そのポリシーが読み込まれて適用されます。

  3. グループ ポリシーがある場合は、そのポリシーが読み込まれ、優先順位の高いものから順に適用されます。 グループ ポリシーが既定のユーザー ポリシーと矛盾する場合は、グループ ポリシーの設定が "無視" でない限り、こちらが優先されます。

  4. コンピュータ固有のポリシーがある場合は、そのポリシーが読み込まれ、レジストリが変更されます。このあと、ポリシーの処理は手順 6 に進みます。

  5. 既定のコンピュータ ポリシーがある場合は、そのポリシーが読み込まれ、レジストリが変更されます。

  6. ポリシーの適用が完了します。

既定では、Windows NT は、システム ポリシーをダウンロードして適用するように設定されています。 この動作は、サポート技術情報 168231「システム ポリシーは Windows NT で適用されていません」 https://support.microsoft.com/default.aspx?scid=kb;ja;168231 に記載されており、次のレジストリ値で制御されます。

HKEY_LOCAL_MACHINE\System\CurrentControlSet \Control\Update\UpdateMode (REG_DWORD)

  • 値が 0 の場合、システム ポリシーの適用が無効になります。

  • 既定値の 1 の場合、自動モードが有効になります。 既述のとおり、認証ドメイン コントローラ上で Ntconfig.pol システム ポリシー ファイルの検索が行われます。

  • 値が 2 の場合、手動モードが有効になります。 同じキー内にある NetworkPath (REG_SZ) 値が参照され、そこにあるポリシー ファイルの検索が試行されます。

システム ポリシーの正しい機能を確認することは重要です。 サポート技術情報 154120「Debugging User Profiles and System Policies in Windows NT 4.0」 https://support.microsoft.com/default.aspx?scid=kb;ja;154120 (英語) に、userenv.dll をチェック ビルド バージョンと置き換える手順が記載されています。この手順に従うと、ポリシー アプリケーションのデバッグに使用できるログ ファイルを作成できます。 この手順は、Terminal Server Edition を含む、Windows NT 4.0 の全バージョンおよび Service Pack レベルで利用できます。

既定のシステム ポリシーの動作は、Windows NT ドメイン インフラストラクチャの機能によって異なりますが、システム ポリシーの効果は、Windows 2000 を実行しているコンピュータおよび Windows NT を実行しているスタンドアロン コンピュータで活用でき、ローカル アカウント データベースのユーザーもこれを利用できます。 サポート技術情報 168579「[NT] システム ポリシーをローカルにセットアップする方法」 https://support.microsoft.com/default.aspx?scid=kb;ja;168579 に、ローカル アカウント データベースのユーザーがシステム ポリシーを利用できるようになる、Windows NT システムの設定方法が 2 とおり説明されています。 Windows NT ドメインで Windows 2000、Windows XP、または Windows Server 2003 を実行しているコンピュータを使用している場合は、サポート技術情報 274478「NT 4.0 ドメイン/ワークグループ内の Professional クライアントへのグループ ポリシー」 https://support.microsoft.com/default.aspx?scid=kb;ja;274478 に、Windows NT ドメイン コントローラで Windows 2000 互換ポリシーを配布するために必要な手順が記載されています。

システム ポリシーの展開を計画する際の考慮事項

ポリシーを作成して展開する場合には、最高レベルの安全性を確保するために、システム ポリシーで発生する可能性のある複雑な問題について注意してください。

  • Windows NT 4.0 に実装するシステム ポリシーにはさまざまなバグが存在するため、必ず SP3 以降のバージョンをインストールして、システム ポリシーに関連する重要な更新プログラムをすべてシステムに適用してください。 通常は、他のセキュリティ要件で事実上 Windows NT SP6a が必要となるため、特殊な要件のアプリケーションをサポートする必要がない限り、これは問題になりません。

  • システム ポリシーを確実に検出してダウンロードし、適用するには、ログオンとログオフを最大 2 回ずつ行う必要があります。

  • ポリシーがコンピュータから自動的に削除されることはないため、Administrator アカウント用にグループ固有のポリシーを作成する必要があります。 このポリシーは、少なくとも、管理者に必要な制限を削除し、必要な機能へのアクセス権限を管理者が自分で再付与できるように設定する必要があります。一般的な Administrator グループ ポリシーは、制限された全機能を単に復元するためのものです。

  • ポリシーの各設定を慎重に調べ、二重否定となる可能性のあるものがすべて正しく解析されることを確認してください。 一部の設定では、特定の動作を停止させるために二重否定が必要になります。

  • システム ポリシー ファイルの格納場所を再確認してください。 ファイルは、NETLOGON 共有に格納される必要があります。NETLOGON 共有の場所は、プライマリ ドメイン コントローラが Windows NT 4.0、Windows 2000、または Windows Server 2003 のいずれを実行しているかによって異なります。

  • 重要な確認事項として、ディレクトリ レプリケーション サービスが正しく機能し、PDC の NETLOGON 共有の内容がすべての BDC に正しくコピーされることを確認してください。

  • ポリシー ファイルの変更日時が、ポリシー ファイルを変更するたびに、または新しいポリシーを展開するたびに、更新されることを確認してください。 以前の Service Pack がインストールされている一部のクライアントでは、ポリシー ファイルがキャッシュされ、その変更日時はファイルの更新指標として使用されます。 可能であれば、Windows NT を実行しているすべてのコンピュータに SP3 以降がインストールされていることを確認してください。推奨は SP6a です。

  • Windows NT 4.0 と、Windows 2000 または Windows Server 2003 ドメイン コントローラが混在している環境では、Windows NT のディレクトリ レプリケーション サービスと Windows 2000 のファイル レプリケーション サービスの間のブリッジを提供するレプリケーション プロセスを確立することができます。

  • Windows NT 4.0 Terminal Server Edition の場合は、システム ポリシーの使用に関して、他にはない複雑な問題があります。 詳細については、サポート技術情報 192794「How to apply System Policy settings to Terminal Server」 https://support.microsoft.com/default.aspx?scid=kb;ja;192794 (英語) を参照してください。

繰り返しますが、システム ポリシーを使用しても、レジストリおよびファイル システム アクセス制御リスト (ACL) を正しく適用する作業の代わりにはなりません。また、他のシステム強化対策を用いずにすむわけでもありません。 一例として、Microsoft Office アプリケーション バイナリの実行しかユーザーに許可しないシステム ポリシーを適用したシステムを想定します。 ユーザーは、Office の標準的な [ファイル] メニューを使用して、新規フォルダを作成し、cmd.exe などの実行可能ファイルやレジストリ エディタを書き込み可能な場所にコピーして、その名前をシステム ポリシーで許可されている実行可能ファイル名に変更することができます。このような手順でポリシーは回避できます。

システム ポリシーを展開する場合、次のような具体的な弱点がいくつかあるため、これらの弱点を検討して別のセキュリティ対策で補完する必要があります。

  • システム ポリシーで実行可能ファイルを制限する場合、完全なパス名で指定する必要があり、既定の検索パスに依存することはできません。

  • エクスプローラの [ツール] メニューと [表示] メニューの使用の制限については、検討する必要があります。 これらのメニューには、使用するとポリシーの制限を打破できるオプションが多数含まれています。

  • レジストリ ファイル (.reg) は、RegEdt32RegEdit へのアクセス権限が削除されている場合でも、既定でファイル名の拡張子の関連付けが設定されているため、通常は実行可能です。

  • 一時ディレクトリやプロファイル ディレクトリなど、ユーザーが書き込み可能なディレクトリは、既定の検索パスに含まれません。

  • レジストリの World というセキュリティ ID (SID) には、必要以上のアクセス権限が与えられています。 この ID には、クエリ/列挙/読み取り権限のみを許可することをお勧めします。ただし、この ID は古いアプリケーションを破壊する可能性があるため、機能の維持に必要な権限を特定する広範なテストを実施する必要があります。

  • システム ディレクトリ内のすべての実行可能ファイルを、よく調査する必要があります。 これらのファイルから 実行権限を削除しても、ユーザーに読み取り権限がある場合、書き込み可能な場所にファイルをコピーして、そこから実行することができます。

セキュリティ構成マネージャ

セキュリティ構成マネージャ (SCM) は、当初 Windows 2000 用に設計されたものですが、Windows NT 4.0 SP4 以降でも使用できるようになりました。 SCM は、SP6a 用 CD-ROM から、またはマイクロソフトの FTP サイトからダウンロードして入手できます。 SCM の主なツールはセキュリティ構成エディタ (SCE) で、これを使用してセキュリティ テンプレートやシステム ポリシーを作成および管理することができます。

SCE を使用すると、役に立つさまざまなタスクを実行できます。 以下にその例を紹介します。

  • Windows NT を実行しているコンピュータの監査、ユーザー権限、およびセキュリティ設定を指定するセキュリティ テンプレートを作成する。

  • ドメイン内にある 1 台以上のコンピュータにテンプレートを自動的に適用する。

  • 1 台以上のコンピュータをスキャンして、特定のテンプレートとの適合レベルを判定する。

SCE をインストールした場合、一組のテンプレートが既定で %winnt%\security\templates フォルダに追加されます。 各テンプレートは、特定のセキュリティ環境およびコンピュータを対象に設計されています。

基本テンプレート (Basic*4.inf) は、対象となるコンピュータに標準レベルのセキュリティを適用します。これには、6 週間のパスワード有効期限設定や、レジストリ キー、ファイル システム、ユーザー権限の基本セットが含まれます。

互換テンプレート (Comp*4.inf) は、基本テンプレートよりも強力なセキュリティを適用します。 ただし、古いクライアントやアプリケーションと競合する可能性のあるセキュリティ設定は無効になっています。このテンプレートの目的は、アプリケーションの互換性に関する問題の発生を防ぎ、安全性を高めることにあります。

高セキュリティ テンプレート (HiSec*.inf) は、いくつかの追加セキュリティ ポリシーを適用します。これには、パスワードの最低文字数の 7 文字から 8 文字への増加、制限が強化されたファイル システムおよびレジストリのアクセス許可セットの使用が含まれます。 ファイル システムやレジストリのアクセス許可、またはユーザー権限の割り当てによっては、このテンプレートが原因で古いアプリケーションに問題が発生することがあります。

セキュリティ テンプレート (Secur*.inf) は、最も安全性の高い標準テンプレートですが、保護されたコンピュータと、同様の設定が行われていない Windows 95/98 クライアントの間の相互運用性を制限する、サーバー メッセージ ブロック (SMB) 署名などの機能を有効にします。

表 4.1: Windows NT SCE ツールセットに同梱されている定義済みテンプレート

目的 セキュリティ対象 使用ファイル
基本的なセキュリティ プライマリ/バックアップ ドメイン コントローラ BasicDC4.inf
  メンバ サーバー BasicSv4.inf
  ワークステーション BasicWk4.inf
セキュリティの向上とアプリケーションの完全な互換性 プライマリ/バックアップ ドメイン コントローラ CompDC4.inf
  メンバ サーバー CompDC4.inf
  ワークステーション CompWS4.inf
高いセキュリティとアプリケーションの互換性の縮小 メンバ サーバーまたはドメイン コントローラ HiSecDC4.inf
  ワークステーション HiSecWS4.inf
高いセキュリティと Windows 98 との互換性の縮小 メンバ サーバーまたはドメイン コントローラ SecurDC4.inf
SCM は、当初 Windows 2000 用に設計されたものであるため、グループ ポリシーを使用する管理者が使い慣れたインターフェイスを提供します。 この使い慣れたインターフェイスには、統合された Windows NT ACL エディタを Windows 2000 で使用されている ACL エディタに更新する機能も備わっています。 この機能を利用した場合、システム全体の ACL の動作に重要な影響を与えます。SCM では、継承された ACL を動的に適用する Windows 2000 ACL 継承モデルが必要となるためです。 新しいサブシステムでは、アクセス制御エントリ (ACE) が親オブジェクトから子オブジェクトにコピーされるのではなく、**継承可能な権限の反映**に関するポリシーを参照することによって有効かどうかの確認が行われます。 更新された継承システムは、SCM によって適用されたポリシーを介して使用されるだけでなく、エクスプローラの通常の ACL エディタによっても使用されます。 ただし、このシステムはレジストリ エディタ (regedt32.exe) で直接アクセスできないため、SCM によって適用された、レジストリの ACL を変更するポリシーでは、レジストリ エディタでは操作できない ACL を作成できます。 新規の ACL エディタ システムの詳細およびその影響 (無効にする手順、つまり SCM を無効にする手順など) については、サポート技術情報 195509「SP4 のセキュリティ構成マネージャをインストールすると Windows NT 4.0 の ACL エディタが変更される」 [https://support.microsoft.com/default.aspx?scid=kb;ja;195509](https://support.microsoft.com/kb/195509) を参照してください。 SCM を使用すると、次の項目を設定できます。 - アカウント ポリシー (パスワードおよびアカウント ロックアウト ポリシー オプションなど) - ローカル ポリシー (監査、ユーザー権限の割り当て、セキュリティ ポリシー オプションなど) - イベント ログ ポリシー - 制限されたグループ (指定したグループのメンバを制限する機能を提供) - システム サービス (さまざまなサービスおよび転送を設定するオプションを提供) - レジストリのアクセス許可 - ファイル システムのアクセス許可 SCM の GUI では、%winnt%\\security\\templates フォルダに格納されているさまざまな定義済みポリシーの一覧が表示されます。 グラフィカル ユーザー インターフェイス (GUI) を使用して、システムの分析や選択したポリシー テンプレートとの整合性の比較だけでなく、保持している多種多様な古いシステムに適した複数のポリシーを定義、編集、および保守することができます。 SCM と Active Directory のポリシーの主な相違点は、関連するグループのコンピュータ全体にポリシーを自動展開する方法が Windows NT に備わっていないことです。したがって、構成テンプレートを適切なコンピュータに配布する手段を用意する必要があります。 配布するには、いくつかのメカニズムを組み合わせて手作業による操作を行うかまたはある種のスクリプトを作成し、ポリシーが定期的に自動適用されるようにする必要があります。 アカウント ポリシーに以下の基本的な変更を加えて、すべてのシステムに配布する際に、SCM を利用します。 - Guest アカウントの名前を変更し、これを無効にします。それには、SCM で \[Local Policies\]、\[Security Options\]、\[Change Guest account name to\] の順に選択します。 無効の場合でも、このアカウントに非常に強固なパスワードが設定されていることを確認します。 また、定期的に監査を行い、Domain Guests 以外のグループに Guest アカウントが含まれていないことを確認します。Domain Guests には他のメンバは設定されていないはずです。 - Administrator アカウントの名前を知られていない名前に変更し (**\[Local Policies\]、\[Security Options\]、\[Change Administrator account name to\]** の順に選択)、権限や許可を持たない、おとりの Administrator アカウントを作成します。 このおとりアカウントには強固なパスワードを設定して無効にし、Guest アカウントと同様に扱います。 このアカウントに「おとり」とわかるようなコメントを付けないようにしてください。このアカウントの意味がなくなります。 また、定期的に監査を行い、このアカウントが他のグループに追加されていないことを確認する必要があります。このアカウントに対して認証の試行を行う場合は特に注意してください。 この方法では、ネットワーク内の攻撃者がよく知られた SID を使用して Administrator アカウントの本当の名前を見つけ出すことを防ぐことはできませんが、攻撃者が不注意であるか外部ネットワークからの攻撃である場合は、攻撃に時間がかかるため事前に探知することができます。 - 匿名ユーザー (NULL セッション) にアカウント名とファイル共有が列挙されるのを禁止します。 Windows の既定の設定では、資格情報がないユーザーでもリモート システムと接続でき、この情報が表示されます。 この技術は、一般的な攻撃経路です。 禁止するには、\[Local Policies\] ノードの \[Security Policies\] オブジェクトにある **\[Disallow enumeration of account names and shares by anonymous\]** 設定を使用します。 #### NTLM 認証レベルを選択する SP4 以前の Windows NT 4.0 クライアントでは、NTLMv1 認証が使用されています。この認証には設計上の欠陥があり、攻撃者による傍受や解読に対して脆弱であることが証明されています。 NTLM 認証は、さらに脆弱な LAN Manager (LM) 認証プロトコルの後継として設計されました。LAN Manager では、LM ハッシュと呼ばれる脆弱なハッシュ内のすべてのパスワード情報を格納するストレージが必要です (詳細については後述します)。 LM ハッシュは解読が容易なため、パスワードが流出する原因となります。 LM、NTLM、および NTLMv2 は、次のような操作の認証に使用されます。 - ドメインに参加する - Active Directory フォレスト間で認証を行う - Windows NT 4.0 ドメインに対して認証を行う - ファイル サーバーまたはプリント サーバーとして機能する Windows NT 4.0 または Windows 98 を実行しているコンピュータに対して認証を行う - ドメイン メンバではないサーバーに対して認証を行う Trey では、Windows Server 2003 (ドメイン コントローラ用)、Windows 98、および Windows NT 4.0 を実行しているコンピュータが混在しているため、既存のクライアントが正常に機能する一方で最適のセキュリティを実現できる NTLM 認証レベルを選択する必要があります。 Windows NT、Windows 2000、および Windows Server 2003 では、6 種類の LM 互換レベルがサポートされています。このレベルは、**HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet\\Control** **\\LSA\\LMCompatibilityLevel** レジストリ キーを使用して制御します。 - **0 (LM および NTLM 応答を送信)**。この設定にすると、クライアントの認証に LM または NTLM のいずれかのバージョンが使用されるため、最高の相互運用性を実現できます。 ただし、ネットワーク上の安全ではない LM トラフィックにも許可が与えられます。 - **1 (LM および NTLM を送信 - ネゴシエーションの場合、NTLMv2 セッション セキュリティを使用)**。 この設定にすると、より高いセキュリティを実現できますが、Windows 98 用の DSClient ソフトウェアが必要です。 この値を選択すると、両方のコンピュータで NTLMv2 がサポートされている場合、NTLMv2 をネゴシエートできます。 この値は、展開中に使用する場合は最適の設定です。DSClient がインストールされたすべてのコンピュータで NTLMv2 が使用され、以前のバージョンの Windows がインストールされたその他すべてのクライアントでも認証を実行できます。 - **2 (NTLM 応答のみを送信)**。 この値を設定すると、DSClient がインストールされていない Windows 98 クライアントの使用が制限されます。これは、Windows 98 を実行している未変更のコンピュータからの LM 要求にサーバーが応答しないためです。 - **3 (NTLMv2 応答のみを送信)**。 この値は、Windows NT 4.0 SP4 以前のバージョンを実行しているすべてのクライアントに DSClient がインストールされている場合にのみ使用します。 - **4 (NTLMv2 応答のみを送信/LM を拒否)**。LM 認証が要求された場合に NTLMv2 応答が送信されない点以外は、上記の設定と同じです。 - **5 (NTLMv2 応答のみを送信/LM および NTLM を拒否)**。NTLM 要求も無視される点以外は、上記の設定と同じです。 この設定は、ネットワーク上のすべてのコンピュータに Windows 2000 以降がインストールされているか、または Windows 98 と DSClient がインストールされている場合にのみ適用することができます。 ##### Windows 98 の NTLM 認証をアップグレードする DSClient の機能を拡張すると、Windows 98 システムで認証に NTLMv2 を使用することができます。 NTLMv2 セッションのセキュリティ暗号化で使用されるキーの最大長は、既定では 56 ビットです。 128 ビットの NTLMv2 サポートを有効にするには、Internet Explorer 4 以降がインストールされていて、128 ビットのサポート機能がインストールおよび設定されていることを確認してください。 この準備作業は、DSClient をインストールする前に実行する必要があります。 DSClient ソフトウェアをクライアント コンピュータに配布したら、認証に使用できる LM プロトコル ファミリのバージョンを制限することができます。 この制限は、すべてのドメイン コントローラ、およびリモート認証で使用するアカウントを提供するその他のサーバーで設定する必要があります。 ##### Windows NT 4.0 の NTLM 認証をアップグレードする Windows NT 4.0 SP4 以降には、使用する認証方法を LM、NTLM、および NTLMv2 から選択して、それぞれの要求に応答する機能が備わっています。 この変更を行うには、レジストリ キーの追加が必要になります (次の実装の項で説明します)。 Trey では、Windows NT システムの互換レベルを 5 (NTLMv2 のみを許可) に設定することにしましたが、すべての Windows 98 システムに DSClient がインストールされるまで、この変更を実施できませんでした。 ##### Windows 2000 および Windows Server 2003 の NTLM 認証をアップグレードする Trey の IT 管理者は、コンピュータおよびドメイン コントローラの NTLM 認証レベルを設定するために、会社のドメイン コントローラ上に新しい GPO を作成して、ドメイン コントローラの組織単位 (OU) にリンク付けしました。 そして、**コンピュータの構成\\Windows の設定\\セキュリティ設定\\ローカル ポリシー\\セキュリティ オプション\\LAN Manager 認証レベル**の設定を変更して、この処理を終了しました。 ドメイン コントローラに**ドメイン コントローラ** ポリシー、Active Directory メンバに**ドメイン** ポリシー、スタンドアロン コンピュータまたは Windows NT ドメインのメンバであるその他のコンピュータにローカル ポリシーが使用されることを確認してください。 DSClient がすべての Windows 98 システムに完全に展開されたら、LM 認証レベル設定を **3**、**4**、または **5** に変更できます。変更すると、LM 認証は使用できなくなります。 古いバージョンの Windows システムは、DSClient がインストールされるまでネットワーク データにアクセスできません。 Trey の環境には Windows 98 クライアントが含まれていますが、そのすべてに DSClient 拡張がインストールされているため、Windows NT ベースのコンピュータ (Windows NT、Windows 2000、および Windows XP) では認証レベルを **5** に設定し、Windows 98 を実行しているコンピュータでは認証レベルを **3** に設定しました。 このようにしないと、Windows 98 *以外*のコンピュータで認証レベルを **4** 以上に設定した場合、DSClient 拡張がインストールされていないコンピュータが認証されなくなります。 Windows 2000 システムと Windows NT 4.0 システムが混在したネットワークでこの設定を機能させるホットフィックスについては、サポート技術情報 305379「Windows NT 4.0 のドメインで NTLM 2 のレベル 2 より上を使用する Windows 2000 の認証問題」 [https://support.microsoft.com/default.aspx?scid=kb;ja;305379](https://support.microsoft.com/kb/305379) を参照してください。 Windows システムでは、セキュリティ チャネルと呼ばれる通信チャネルが作成され、信頼されるドメインのコンピュータ アカウントとユーザー アカウントの認証に使用されます。 セキュリティ チャネルを使用することで仲介者攻撃を防止でき、クライアントは信頼されたドメインのアカウント データベースにアクセスできるようになります。 セキュリティ チャネルをデジタル暗号化またはデジタル署名することはできますが、それには、すべてのドメイン コントローラで Windows NT 4.0 SP6a 以降が実行されている必要があります。 セキュリティ チャネルの署名は、信頼されたドメインのクライアントに限らず、ドメイン内のすべてのクライアントに影響を与えるため、この機能を有効にする前に慎重に検討してください。 #### 効果的なパスワードとロックアウトのポリシーを定義する セキュリティの基本原則の 1 つは、プレーンテキストのパスワードを転送または保存しないということです。 プレーンテキストで保存されたパスワードは、SAM の調査、またはネットワーク セッションのスニッフィングによって簡単に解読されます。 最新の Windows 認証プロトコルでは、ハッシュと呼ばれる暗号化アルゴリズムが使用されており、ユーザーがパスワードを入力した時点からパスワードが保存されるだけでなく、認証資格情報の転送もすべて保護されます。 ただし、アカウントがロックアウトされる前にログオンを失敗できる回数に加えて、パスワードの長さと強度を制御するポリシーも定義する必要があります。 その他のガイダンスについては、[https://www.microsoft.com/technet/prodtechnol/windowsserver2003/ technologies/security/bpactlck.mspx](https://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/security/bpactlck.mspx) (英語) から入手可能なホワイトペーパー「Account Passwords and Policies」を参照してください。 #### ファイル システムを強化する 起動の強化に併せて、組織内の Windows NT 4.0 を実行している各コンピュータのファイル システムおよびストレージ デバイスの安全性も高める必要があります。 最初の重要な作業として、Windows NT 4.0 を実行している全コンピュータで NTFS ファイル システム (NTFS) が使用されていることを確認します。 NTFS では、Windows NT、Windows 98、およびその後継で提供される共有レベルのアクセス許可以外に、ファイルとフォルダへのアクセス許可が提供されます。 NTFS 権限を使用すると、他のユーザーのファイルを読み取る機能が制限され、コンソールに物理的にアクセスできる攻撃者が代替オぺレーティング システムをブートせずにデータを盗んだり変更したりすることは、さらに困難になります。 Windows NT には、ファイル アロケーション テーブル (FAT) または FAT32 ボリュームを NTFS に非破壊的に変換するコマンドが用意されています。ただしこの場合、ボリュームへの排他アクセス権限が必要になります。 変換ユーティリティを使用してボリュームを NTFS に変換した場合、適用される既定のアクセス許可は "**Everyone: フル コントロール**" になります。 このアクセス許可は、不要のため変更する必要があります。既存の NTFS システムにも、制限のゆるい不要な権限が含まれる場合があります。 米国家安全保障局 (NSA) では、Windows NT サーバーおよびワークステーション用に一連の推奨アクセス許可を開発し、『*Guide to Securing Microsoft Windows NT Networks*』で公開しています。 この推奨アクセス許可は、XCACLS ツールを使用するスクリプトを用いて手動で適用するか (サポート技術情報 318754「\[HOWTO\] Xcacls.exe を使用して NTFS アクセス許可を変更する方法」 [https://support.microsoft.com/default.aspx?scid=kb;ja;318754](https://support.microsoft.com/kb/318754) を参照してください)、または定義済みの SCM テンプレートを使用して適用することもできます。 同ガイドの第 11 章および第 13 章には、かなり広範囲にわたる推奨事項が記載されているため、詳細な実装手順については公開されている文書を参照する必要があります。 #### サービスを強化する サービスおよびアカウントのセキュリティ保護に重点を置いた設定の変更がいくつかあります。この変更は通常、すべての Windows NT 環境に適用されます。 Windows NT 4.0 SP3 で改善された項目の 1 つとして、Authenticated Users セキュリティ グループを作成できるようになりました。 このグループは、ユーザーまたはプロセスが認証状態に関係なくファイルおよびサービスにアクセスできなくしているすべての領域で、Everyone セキュリティ プリンシパルを置き換えるためのものです。 匿名接続を許可する必要がある場合を除き、作成および管理するすべてのファイルの ACL で、このグループを置き換える必要があります。 ただし、ほとんどのサービスではこのグループは必要ありません。たとえば、IIS ではすべての匿名要求が特定のアカウントにマップされます。 サードパーティ製アプリケーションでは、Everyone グループに含まれるものが異なる可能性があるため、注意してテストする必要があります。 Authenticated Users グループのほかにも、レジストリへの匿名接続を無効にして、匿名ユーザーが以下のレジストリ エントリを介してサーバー上のドメイン ユーザー アカウント リストと共有リストを列挙できないようにする必要があります。 **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\LSA** **RestrictAnonymous** (REG\_DWORD) - 値を **0** に設定すると、この制限が無効になり、匿名ユーザー (NULL セッション) はユーザー リストと共有リストを列挙できるようになります。 - 値を **1** に設定すると、この制限が有効になり、NULL セッションではユーザー リストと共有リストを列挙できなくなります。 **RestrictNullSessAccess** (REG\_DWORD) - 値を **0** に設定すると、この制限が無効になり、匿名ユーザー (NULL セッション) はレジストリに接続できるようになります。 - 値を **1** に設定すると、この制限が有効になり、NULL セッションではレジストにアクセスできなくなります。 サポート技術情報 143474「匿名ログオン ユーザーがアクセスできる情報の制限」 [https://support.microsoft.com/default.aspx?scid=kb;ja;143474](https://support.microsoft.com/kb/143474) には、レジストリおよびユーザーと共有の列挙への匿名接続を完全に制限するための、Authenticated Users グループの使用方法とレジストリの手動での編集方法が記載されています。 サポート技術情報 153183「リモート コンピュータからレジストリへのリモート アクセスを制限する方法」 [https://support.microsoft.com/default.aspx?scid=kb;ja;153183](https://support.microsoft.com/kb/153183) には、認証ユーザーのレジストリへのリモート アクセスを制限する方法の詳細が記載されています。 このほか、ディレクトリ レプリケータ サービス (DRS) が適切にセキュリティ保護されるように変更を加える必要があります。ドメイン コントローラでの変更は特に重要です。 このサービスによって、指定したディレクトリの内容を複数のサーバーに複製することができます。システム ポリシーやその他の重要なファイルをすべてのドメイン コントローラに確実に適用するためには、このサービスは欠かせません。 また、基幹アプリケーションの負荷分散されたファイル サービスを保守する際にも、きわめて有益です。 レプリケーション接続を設定するには、ドメインの \[サーバー管理\] で **\[レプリケーション\]** ボタンをクリックします。 レプリケーション パートナーシップごとに、エクスポート (複製元) とインポート (複製先) が定義されています。 各パートナーシップの詳細は、接続の各末端で個別に設定する必要があります (設定方法は、ドメイン間で信頼関係を作成する場合と同じです)。 DRS では、既定でローカル システム アカウントが使用されていますが、別のアカウントにすぐに変更する必要があります。 DRS で使用される固有のドメイン ユーザー アカウントを作成して、すべてのコンピュータで同じアカウントが使用されるように設定します。ローカル アカウントは使用しないでください。 アカウントを作成したら、サービス マネージャを使用して、DRS がローカル アカウントではなく固有のアカウントを実行していることを確認します。 既定では多くのサービスが有効になっていますが、これらは無効にして、Windows NT を実行しているコンピュータの脅威を低減させることができます。また、ローカル システム アカウントではなく、権限のないアカウントとして実行されるように設定することもできます。 DRS をセキュリティ保護し、不要なサービスを無効にする方法については、また、コンピュータの役割に基づいた各サービスの推奨事項については、『*Microsoft NT 4.0 Security, Audit, and Control Technical Reference*』の「Chapter 10」を参照してください。これは、Microsoft TechNet Web サイト [https://www.microsoft.com/technet/prodtechnol/winntas /maintain/nt4sac/sacch10.mspx](https://www.microsoft.com/technet/prodtechnol/winntas/maintain/nt4sac/sacch10.mspx) (英語) で確認できます。 #### その他の強化対策 さまざまな環境に適用できる強化対策は、他にも多数存在します。 ##### 8.3 形式のファイル名の自動生成を無効にする Windows NT では、16 ビット アプリケーションとの下位互換性を保つため、8.3 形式のファイル名がサポートされています。 8.3 形式のファイル命名規則では、ファイル名に使用できる最大文字数は 8 文字です。すなわち、攻撃者は 20 文字の長さのファイルを参照するのに 8 文字しか入力する必要がないということです。 たとえば、Thisisalongfilename.doc というファイル名の場合、8.3 形式のファイル名では Thisis~1.doc だけで参照できます。 16 ビット アプリケーションを使用しない場合は、この機能をオフにできます。 また、NTFS パーティションでの短縮名の生成を無効にすると、ディレクトリの一覧を迅速に取得できます。 攻撃者が短いファイル名を使用して、通常は見つけることが困難な長いファイル名のデータ ファイルやアプリケーションにアクセスする可能性があります。 ファイル システムにアクセスできた攻撃者は、データにアクセスしたり、アプリケーションを実行したりする可能性があります。 次のレジストリ エントリで、この機能を制御できます。**HKEY\_LOCAL\_MACHINE\\System\\CurrentControlSet\\Control\\FileSystem** **\\NtfsDisable8dot3NameCreation** この変更が加えられたコンピュータにファイルが格納されている場合、8.3 形式で許可されている文字数よりも長い名前がファイルに付けられるため、組織内の 16 ビット アプリケーションからは、それらのファイルにアクセスできなくなります。 自動生成された 8.3 形式の名前のファイルが存在する既存のサーバーにこの設定を適用しても、それらのファイルは削除されません。 既存の 8.3 形式のファイル名を削除するには、それらのファイルをサーバーから別の場所にコピーし、元の場所にあるファイルを削除した後、元の場所にファイルをコピーして戻す必要があります。 ##### 自動実行を無効にする 自動実行機能が有効な場合、コンピュータのドライブにメディアが挿入されるとそのメディアの読み込みがすぐに開始されます。 その結果、プログラムのセットアップ ファイルおよびメディアの音声再生がすぐに始まります。 悪意のある可能性があるプログラムが、CD または DVD に挿入されてすぐに開始されないようにするには、グループ ポリシーですべてのドライブ上の自動実行を無効にします。 自動実行が有効になっていると、システムに物理的にアクセスできる攻撃者が、自動実行可能なメディアをコンピュータに挿入して、悪意のあるコードを自動的に起動し、現在ログオンしているユーザーのコンテキストで実行させる可能性があります。 次のレジストリ エントリで、この機能を制御できます。 **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet** **\\Services\\CDROM\\Autorun** この変更を加えると、コンピュータのドライブに自動実行可能なディスクを挿入しても、自動実行は作動しません。 ##### OS/2 および POSIX サブシステムを削除する OS/2 は、保護モード、仮想メモリが採用された、Intel 80286 および 80386 プロセッサ搭載のパーソナル コンピュータ用のマルチタスク オペレーティング システム ファミリです。 Portable Operating System Interface for UNIX (POSIX) は、オペレーティング システム サービスを定義する米国電気電子学会 (IEEE) の標準です。 サーバーと OS/2 クライアントとのやり取りを強化する必要がある場合は、OS/2 サブシステムが必要です。POSIX サービスを使用するアプリケーションを実行するには、POSIX サブシステムが必要です。 これらのサブシステムにより、プロセスに関連するセキュリティ リスクがわずかながら追加されるため、ログオン処理の前後でプロセスが継続する可能性があります。 つまり、ユーザーがプロセスを開始し、そのあとログオフしても、次にシステムにログオンしたユーザーが、前のユーザーのプロセスにアクセスする可能性があります。 最初のユーザーが開始したプロセスには、そのユーザーのシステム権限が残ることがあります。 これらのサブシステムを無効にするには、サブシステムに必要なバイナリ ファイルと以下のレジストリ エントリを削除します。 - **HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Microsoft** **\\OS/2 Subsystem for NT** レジストリ キーとサブキー - **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet** **\\Control\\Session Manager\\Environment\\OS2LibPath** レジストリ キー - **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet\\** **Control\\SessionManager\\Environment\\Subsystems** レジストリ キーの POSIX サブキーおよび OS/2 サブキー - **\\winnt\\system32\\os2** ディレクトリとサブディレクトリ OS/2 サブシステムまたは POSIX サブシステムに依存するアプリケーションは使用できなくなります。 ##### オブジェクトの保護レベルを上げる Windows NT カーネルを使用すると、呼び出し元が、さまざまな状況下でカーネル オブジェクトの属性を変更できるようになる場合があります。 場合によっては、これで悪意のある呼び出し元が自分の権限を格上げすることができます。 以下のレジストリ エントリで、この機能を制御できます。 - **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet** **\\Control\\Session Manager\\EnhancedSecurityLevel** この変更では、カーネル モードのコードで変更されるのは現在のプロセスのカーネル オブジェクト属性のみです。 ユーザー モードのアプリケーションには影響はありません。 ##### ユーザーがプリンタ ドライバを追加できないようにする Windows NT の既定のアクセス許可設定では、ユーザーは追加のプリンタ ドライバをインストールできます。 場合によっては、悪意のある、または正しく記述されていないドライバによって、権限の格上げが実行されることがあります。 以下のレジストリ エントリで、この機能を制御できます。 - **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet** **\\Control\\Print\\Providers\\LanMan Print Services** **\\Servers\\AddPrinterDrivers** この変更を行うことで、新しいプリンタ ドライバを追加できるのは、Printer Operators グループおよび Administrator グループのメンバのみになります。 ユーザー モードのアプリケーションには影響はありません。 ##### Administrator の自動ログオンが無効であることを確認する Windows NT では、コンピュータが再起動したときに Administrator アカウントで自動的にログオンできるように設定することができます。 この設定を行うと、コンソールが公開され、プレーンテキスト形式の管理者パスワードを含む新しいレジストリ キーが作成されます。 この設定の詳細は、サポート技術情報 97597「Windows NT で自動ログオンを有効にするには」 [https://support.microsoft.com/default.aspx?scid=kb;ja;97597](https://support.microsoft.com/kb/97597) に記載されています。 以下のレジストリ エントリで、この機能を制御できます。 - **HKEY\_LOCAL\_MACHINE\\Software\\Microsoft\\WindowsNT** **\\CurrentVersion\\Winlogon\\AutoAdminLogon** - **HKEY\_LOCAL\_MACHINE\\Software\\Microsoft\\WindowsNT** **\\CurrentVersion\\Winlogon\\DefaultPassword** ユーザー モードのアプリケーションには影響はありません。 ##### Novell クライアントへの通知を無効にする Windows NT では既定で、パスワードが変更されると Novell ネットワーク クライアントに通知されるように設定されています (FPNWCLNT.DLL)。ただし、クライアントがインストールされていない場合、このダイナミック リンク ライブラリ (DLL) のコピーはインストールされません。 この設定が行われていると、攻撃者は、代わりの DLL を作成して、すべてのユーザー パスワード変更イベントを強奪することができます。 この動作を無効にするには、値 "FPNWCLNT" が **HKEY\_LOCAL\_MACHINE\\SYSTEM\\CurrentControlSet** **\\Control\\LSA\\Notification Packages** レジストリ エントリに含まれていないことを確認します。 Netware を使用している環境では、Windows と Netware 間のパスワードの同期機能が無効になります。 [](#mainsection)[ページのトップへ](#mainsection) ### 実装 #### 実装の前提条件 細部にわたる実装を正しく機能させるには、「第 2 章 : セキュリティ リスク管理の統制を Trey Research のシナリオに適用する」に記載の、Trey Research に実装されているような基本的なインフラストラクチャを構築する必要があります。 #### 実装の概要 この解決策のシナリオを実装するには、次の作業を行う必要があります。 - オペレーティング システムのベースラインの確立と、更新プログラムの適用 - Syskey の有効化 - 起動時のタイムアウト時間の短縮 - SCM のインストール - SCM スナップインの読み込み - Trey ポリシー テンプレートの適用 - LM パスワード ハッシュの格納の回避 - NTLM 認証レベルの設定 - サーバー ボリュームの NTFS への変換 - その他の強化対策の実行 #### オペレーティング システムのベースラインを確立する 新しいコンピュータを構築する場合や既存のシステムにオペレーティング システムを再インストールする場合は常に、コンピュータが十分に保護されるように、適切なセキュリティ更新プログラムをインストールする必要があります。 パッチ管理は複雑なため、「第 6 章 : パッチ管理」に詳しく記載されていますが、新しいシステムのベースラインを確立するプロセスは、Windows NT を実行しているコンピュータをセキュリティ保護する上で必要不可欠です。 Windows NT を実行しているすべてのコンピュータに、次の更新プログラムがインストールされている必要があります。 - Windows NT 4.0 Service Pack 6a (SP6a)。これは、Windows NT 4.0 用の最新サービス パックです。 このサービス パックには、ユニットとしてインストールされるように設計された、回帰テスト済みの完全な修正プログラム セットが含まれています。 Windows NT 4.0 SP6a のリリース後に、暗号ソフトウェアの輸出に関する米国の法律が改定されました。 高度暗号化バージョンの SP6a にアップグレードすることで、Windows NT 4.0 を実行しているコンピュータの暗号化強度を向上させることができます。 高度暗号化バージョンの SP6a を標準暗号化バージョンのコンピュータにインストールすると、オペレーティング システムが自動的にアップグレードされます。 Windows NT 4.0 Service Pack 6a は、[https://www.microsoft.com/ntserver/nts/downloads /recommended/sp6/128bitx86/](https://www.microsoft.com/ntserver/nts/downloads/recommended/sp6/128bitx86/) (英語) から入手できます。 **Windows NT 4.0 の暗号化バージョンを確認するには** 1. Windows NT 4.0 を実行している対象コンピュータに Administrator としてログオンします。 2. エクスプローラを使用して \\winnt\\system32 フォルダを開きます。 3. schannel.dll ファイルを探して選択し、**\[ファイル\]** メニューの **\[プロパティ\]** をクリックします。 4. **\[バージョン情報\]** タブをクリックします。 5. **\[説明\]** フィールドの内容を確認します。 "Export Version" と記載されている場合は標準暗号化バージョンが、"U.S. domestic version" と記載されている場合は高度暗号化バージョンがインストールされています。 - Windows NT 4.0 Service Pack 6a 以降のセキュリティ ロールアップ パッケージ (SRP) には、オリジナルの SP6a のリリース後にリリースされた複数のセキュリティ更新プログラムが組み込まれており、Windows Update で提供される追加のセキュリティ更新プログラムに必要不可欠です。 詳細については、サポート技術情報 299444「Windows NT 4.0 Service Pack 6a 以降のセキュリティ ロールアップ パッケージ (SRP)」 [https://support.microsoft.com/default.aspx?scid=kb;ja;299444](https://support.microsoft.com/kb/299444) を参照してください。セキュリティ ロールアップ パッケージ自体は [https://www.microsoft.com/download/details.aspx?FamilyID=24723e58-6b47-43e4-addc-1324d3bd7d59&displaylang=ja ](https://www.microsoft.com/download/details.aspx?familyid=24723e58-6b47-43e4-addc-1324d3bd7d59&displaylang=ja) からダウンロードできます。 - マイクロソフトでは、SRP をリリースしたあと、Windows NT 4.0 用の SRP または Service Pack のリリースを行っていませんが、オペレーティング システムの一部などの個々のコンポーネント、Internet Explorer、ルーティングとリモート アクセス サービス (RRAS) やインターネット インフォメーション サービス (IIS) などのアドオン ユーティリティは更新しています。 セキュリティ更新プログラムの最新の一覧は、Microsoft TechNet から入手できます。また、Windows Update から入手できるセキュリティ更新プログラムの一覧を手動で確認することもできます。 - 最新バージョンは Internet Explorer 6.0 Service Pack 1 (SP1) であり、 から入手できます。このバージョンでは、数百種類のセキュリティ関連の修正および改良が組み込まれています。 それぞれの環境に応じて、マイクロソフト Web サイトから Internet Explorer を直接ダウンロードすることも、CD-ROM 版を注文することも、または Internet Explorer 管理者キットを使用して複数のコンピュータにインストールすることもできます。Internet Explorer 管理者キットは、
```  
    attrib –s –h –r boot.ini
```
  1. メモ帳などのテキスト エディタを使用して Boot.ini ファイルを開きます。

  2. timeout=30」と記述された行を見つけ、timeout 値を「0」に変更します。

  3. ファイルを保存して、テキスト エディタを終了します。

  4. attrib コマンドを使用して、Boot.ini ファイルの読み取り専用設定、非表示設定、および各システム属性を復元します。

        attrib +s +h +r boot.ini
    

SCM をインストールする

ここでは、SCM ツールのインストール方法について説明します。 Windows NT 4.0 SP4 以降を実行しているコンピュータであれば、Server Edition でも Workstation Edition でも、SCM を実行できます。 Trey の IT スタッフは利便性を考慮し、パーソナル ワークステーションに SCM をインストールして、ドメイン内の Windows NT 4.0 を実行しているすべてのコンピュータに対して SCM を実行できるようにしました。

SCM をインストールするには

  1. Administrator としてログオンし、エクスプローラを開きます。

  2. c:\temp ディレクトリがない場合は、作成します。

  3. SCM のインストーラを https://support.microsoft.com/kb/245216/en (英語) からダウンロードして、そのファイルを C:\Temp に保存します。

  4. C:\Temp を開いて、Scesp4i.exe アプリケーションをダブルクリックします。

  5. インストール ユーティリティの指示に従い、サポート ファイルの解凍先となる一時ファイルのパスとして「C:\Temp\scminstall」を指定します。次に [OK] をクリックします。

  6. エクスプローラを使用して C:\Temp\scminstall を開きます。

  7. Mssce ユーティリティをダブルクリックして、SCE、および、GUI バージョンの SCE に必要な Microsoft 管理コンソール (MMC) ツールをインストールします。 インストーラによって、コンピュータ内の適切な場所に SCM コンポーネントが自動的に配置されます。

SCM スナップインを読み込む

ワークステーションまたはサーバーに SCM をインストールしたら、SCM を実行できます。 次の手順では、MMC に SCM スナップインを読み込みます。

SCM スナップインを読み込むには

  1. SCM をインストールしたコンピュータに Administrator としてログオンします。

  2. MMC を起動します。

  3. [Console] を選択して [Add/Remove Snap-In] をクリックします。

  4. [Add] をクリックします。

  5. [Security Configuration Manager] を選択します。

  6. [OK] をクリックし、もう一度 [OK] をクリックします。

Trey ポリシー テンプレートを適用する

ここでは、SCE GUI およびコマンド ライン インターフェイス (CLI) ツールを使用して Trey ポリシー テンプレートを適用する方法を説明します。 Trey では、下位互換性とセキュリティのバランスが最適な Comp* テンプレートを使用することにしました。

SCE GUI でポリシー テンプレートをカスタマイズするには

  1. テスト用の Windows NT 4.0 ワークステーションにログオンします。

  2. %systemroot%\security\templates\compws4.inf および %systemroot%\security\templates\compdc4.inf のバックアップを作成します。

  3. メモ帳を使用して %systemroot%\security\templates\compws4.inf を開きます。

  4. MACHINE\System\CurrentControlSet\Services\Rdr\Parameters
    \EnableSecuritySignature」が含まれている行を探します。

  5. この行を編集して、「EnableSecuritySignature 」の値が「1」になるようにします。

  6. ファイルを保存して、メモ帳を閉じます。

  7. メモ帳を使用して %systemroot%\security\templates\compdc4.inf を開きます。

  8. 開いたファイルで、手順 4 ~ 6 を繰り返します。

SCE GUI でポリシー テンプレートを適用するには

  1. Administrator としてセキュリティ構成マネージャを起動します。

  2. [Security Configuration Manager] ノードを選択します。

  3. [Configurations] ノードを選択します。

  4. 構成ファイルの既定ディレクトリ (%systemroot%\security\templates) を選択して、構成テンプレートを表示します。

  5. 適切な構成ファイル (compws4.inf または compdc4.inf) を選択します。

  6. ポリシー テンプレート内にある各種のオブジェクトや設定について確認します。

  7. [Security Configuration Manager] ノードを選択します。

  8. [Database] ノードを右クリックして、[Import Configuration] をクリックします。

  9. 該当するポリシー テンプレートを選択して、[OK] をクリックします。

  10. [Database] ノードを右クリックして、[Configure System Now] をクリックします。

  11. [OK] をクリックして、既定のログ ファイルのパスを受け入れます。

  12. ポリシーが適用されるまで待ち、ログ ファイルで結果を確認します。

  13. ログ ファイルを閉じます。

  14. MMC を閉じます。

コマンド ラインでポリシー テンプレートを適用するには

  1. 対象のコンピュータにログオンします。

  2. コマンド プロンプトを開きます。

  3. 次のコマンドを実行します。

    secedit /configure /cfg c:\winnt\security\templates\treysec.inf /overwrite

  4. 結果を確認します。

  5. コマンド プロンプトを閉じます。

LM パスワード ハッシュの格納を回避する

ここでは、LM パスワード ハッシュの格納を回避するために、ポリシーを使用するかまたはレジストリを直接編集して、ドメイン コントローラを構成する方法を説明します。

Windows 2000 SP2 以降、Windows XP、または Windows Server 2003 のグループ ポリシーまたはローカル ポリシーを使用して LM ハッシュの格納を回避するには

  1. グループ ポリシー エディタを開きます。

  2. [コンピュータの構成][Windows の設定][セキュリティの設定][ローカル ポリシー] の順に展開し、[セキュリティ オプション] をクリックします。

  3. 使用可能なポリシーの一覧で、[ネットワーク セキュリティ: 次のパスワードの変更で LAN Manager のハッシュの値を保存しない] をダブルクリックします。

  4. [有効] をクリックし、次に [OK] をクリックします。

  5. コンピュータを再起動して、パスワードを変更します。

NTLM 認証レベルを設定する

ここでは、ドメイン コントローラで使用する NTLM 認証のレベルの設定方法について説明します。

Windows 2000、Windows XP、または Windows Server 2003 のグループ ポリシーを使用して、NTLM レベルを設定するには

  1. ドメイン コントローラに Administrator としてログオンします。

  2. [Active Directory ユーザーとコンピュータ] を起動します。

  3. グループ ポリシー エディタを開きます。

  4. NTLM 認証レベル設定の適用先となるドメインを右クリックして、[プロパティ] を選択します。

  5. [プロパティ] ダイアログ ボックスの [グループ ポリシー] タブをクリックします。

  6. [新規] ボタンをクリックして、新しいグループ ポリシー オブジェクト (GPO) を作成します。

  7. NTLM 認証レベル」と入力して Enter キーを押します。

  8. [編集] ボタンをクリックします。

  9. [コンピュータの構成][Windows の設定][セキュリティの設定][ローカル ポリシー] の順に展開し、[セキュリティ オプション] をクリックします。

  10. 使用可能なポリシーの一覧で、[ネットワーク セキュリティ: LAN Manager 認証レベル] をダブルクリックします。

  11. [NTLMv2 応答のみ送信 (LM を拒否する)] を選択します。これで、Windows 98 と Windows NT のコンピュータが混在しているネットワークに、セキュリティと互換性のバランスが最適な認証レベルが設定されます。

  12. [OK] をクリックします。

  13. グループ ポリシー エディタを閉じます。

  14. [ドメインのプロパティ] ダイアログ ボックスで NTLM 認証レベル GPO を右クリックし、[上書き禁止] をクリックします。

  15. [閉じる] をクリックします。

Windows NT 4.0 SP3 以降のコンピュータで、レジストリ エントリを使用して NTLM レベルを設定するには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control\Lsa

  3. [編集] メニューの [値の追加] をクリックします。

  4. [データ型][DWORD 値] を選択します。

  5. [値の名前] に「LMCompatibilityLevel」と入力し、[OK] をクリックします。

  6. [データ] に「3」(または必要なレベル) を入力し、[10 進] 値として設定します。

  7. レジストリ エディタを終了します。

  8. コンピュータを再起動します。

Windows 98 のコンピュータで、レジストリ エントリを使用して NTLM レベルを設定するには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. レジストリで次のサブキーを探して選択します。
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control

  3. [編集] メニューの [新規] をポイントして、[キー] をクリックします。

  4. Lsa」と入力して Enter キーを押します。

  5. [編集] メニューの [新規] をポイントして、[DWORD 値] をクリックします。

  6. LMCompatibilityLevel」と入力して Enter キーを押します。

  7. [編集] メニューの [値の追加] をクリックして、次のレジストリ値を追加します。

    • [値の名前]: LMCompatibility

    • [データ型]: REG_DWORD

    • [データ]: 3

  8. レジストリ エディタを終了します。

  9. コンピュータを再起動します。

ボリュームを NTFS に変換する

ここでは、FAT ボリュームを NTFS に変換する方法について説明します。

FAT ボリュームを NTFS に変換するには

  1. Administrator としてログオンし、コマンド プロンプトを表示します。

  2. convert コマンドを使用して、変換対象のドライブを指定します。

    convert d: /fs:ntfs

  3. メッセージが表示されたら再起動します。これで、選択したドライブへの排他アクセス権が変換ユーティリティに与えられます。

    システム パーティションを変換する場合、コマンド インタープリタ用の現在の作業ディレクトリが含まれたボリュームを変換する場合、または、ファイルを開いたままのアプリケーションがあるボリュームを変換する場合は、再起動が必要です。

    注 : サポート技術情報 214579「Convert.exeを使用してパーティションをNTFSに変換する方法」 https://support.microsoft.com/default.aspx?scid=kb;ja;214579 に、convert コマンドとその操作方法の詳細が記載されています。

その他の強化対策を実行する

ここからは、その他の強化対策を実装するために必要な手順について説明します。

8.3 形式のファイル名の自動生成を無効にする

この手順を実行すると、16 ビット アプリケーション用の 8.3 形式ファイル名の自動生成が無効になります。

8.3 形式のファイル名の生成を無効にするには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\System\CurrentControlSet
    \Control\FileSystem

  3. NtfsDisable8dot3NameCreation 値が存在しない場合は、[編集] メニューの [値の追加] をクリックし、「NtfsDisable8dot3NameCreation」と入力して REG_DWORD 型であることを確認します。 Enter キーを押します。

  4. NtfsDisable8dot3NameCreation 値を選択します。

  5. [編集] メニューの [修正] をクリックします。

  6. 1」(または必要なレベル) を入力して [OK] をクリックします。

  7. レジストリ エディタを終了します。

    注 : Trey には、正常に機能させる必要がある 16 ビット アプリケーションが数多くありますが、 これらのアプリケーションは、ドメイン内のコンピュータのサブセットで実行されます。 この変更は、すべてのファイル サーバーおよびプリント サーバーに適用されました。メンバ サーバーおよびワークステーションの場合は、16 ビット アプリケーションを実行していないものが選択されて適用されました。

自動実行を無効にする

この手順を実行すると、CD-ROM ドライブの自動実行機能が無効になります。

自動実行を無効にするには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Services\CDROM

  3. [編集] メニューの [値の追加] をクリックします。

  4. Autorun」と入力して、REG_DWORD 型であることを確認します。 Enter キーを押します。

  5. [編集] メニューの [修正] をクリックします。

  6. 0」(または必要なレベル) を入力して [OK] をクリックします。

  7. レジストリ エディタを終了します。

OS/2 および POSIX サブシステムを削除する

この手順を実行すると、OS/2 および POSIX と互換性のあるサブシステムが無効になります。

OS/2 および POSIX を無効にするには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探して削除します。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control\SessionManager\Environment\OS2LibPath

  3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control\Session Manager\Subsystems キーがある場合は、その OS/2 サブキーと POSIX サブキーを探して削除します。

  4. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control\Session Manager\Environment\Subsystems キーがある場合は、その POSIX サブキーと OS/2 サブキーを探し、見つかった場合は削除します。

  5. 次のキーを捜して削除します。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
    \OS/2 Subsystem for NT

  6. レジストリ エディタを終了します。

  7. エクスプローラを開きます。

  8. \winnt\system32\os2 ディレクトリとそのサブディレクトリをすべて削除します。

  9. コンピュータを再起動します。

オブジェクトの保護レベルを上げる

この手順を実行すると、カーネル オブジェクトの保護レベルが上がります。

オブジェクトの保護レベルを上げるには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
    \Control\Session Manager

  3. [編集] メニューの [値の追加] をクリックします。

  4. EnhancedSecurityLevel」と入力して、REG_DWORD 型であることを確認します。 Enter キーを押します。

  5. [編集] メニューの [修正] をクリックします。

  6. 1」(または必要なレベル) を入力して [OK] をクリックします。

  7. レジストリ エディタを終了します。

ユーザーがプリンタ ドライバを追加できないようにする

この手順を実行すると、通常のユーザーはプリンタ ドライバを追加できなくなります。

通常ユーザーによるプリンタ ドライバの追加を無効にするには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Providers\LanMan Print Services\Servers

  3. [編集] メニューの [値の追加] をクリックします。

  4. AddPrinterDrivers」と入力して、REG_DWORD 型であることを確認します。 Enter キーを押します。

  5. [編集] メニューの [修正] をクリックします。

  6. 1」(または必要なレベル) を入力して [OK] をクリックします。

  7. レジストリ エディタを終了します。

Administrator の自動ログオンが無効であることを確認する

この手順を実行すると、Administrator アカウントの自動ログオンが無効になります。

Administrator の自動ログオンを無効にするには (既定では無効)

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon

  3. AutoAdminLogon 値を探して、ある場合はクリックします。

  4. [編集] メニューの [修正] をクリックします。

  5. 0」(または必要なレベル) を入力して [OK] をクリックします。

  6. DefaultPassword 値がある場合は削除します。

  7. レジストリ エディタを終了します。

Novell クライアントへの通知を無効にする

この手順を実行すると、Novell ネットワーク クライアントへのパスワード変更の自動通知が無効になります。

Novell クライアントへの既定のパスワード変更通知を無効にするには

  1. レジストリ エディタ (Regedt32.exe) を起動します。

  2. 次のキーを探してクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

  3. Notification Packages 値を探してクリックします。

  4. [編集] メニューの [修正] をクリックします。

  5. FPNWCLNT 値が表示されないことを確認して、[OK] をクリックします。

  6. レジストリ エディタを終了します。

ページのトップへ

ソリューションをテストする

Trey シナリオの実装が完了したら、実装を検証して要件を満たしていることを確認します。

検証

次の表に記載されている情報を使用して、Trey シナリオをテストし、このガイダンスの実装を検証することができます。

表 4.2: 検証テスト

内容 テスト手順 予想される結果
Internet Explorer 6 SP1 のインストールの検証 Internet Explorer を起動し、 [ヘルプ] メニューの [バージョン情報] をクリックします。 バージョン情報に "6.0.2800.xxxx" と表示されます。
Windows NT 4.0 (SP6a) のインストールの検証 [管理ツール] の [Windows NT 診断プログラム] アプレットを実行して、[バージョン] タブをクリックします。 バージョン情報に "SP6a" と表示されます。
起動シーケンスの検証 モード 1 の場合 (Trey のほとんどのサーバーおよびそのワークステーションすべてで、[ローカルにスタートアップ キーを保存する] を選択) 起動時にキーの暗号化が解除されて読み込まれ、そのコンピュータは管理者が操作しなくても再起動できるようになります。 モード 2 の場合 (高付加価値サーバーで、[パスワード スタートアップ]、および関連するテキスト フィールドを使用) 起動処理を完了するには、起動時に管理者がコンソールにパスワードを入力する必要があります。 クライアントが正常にログオンできます。
DSClient が正常にインストールされていることの検証 [スタート] メニューの [検索] をクリックして、[人] をクリックします。 Active Directory を検索する機能があれば、DSClient は正常にインストールされています。
システム ポリシーの検証 システム ポリシーで制限されているリソースにアクセスしてみます。 システム ポリシーの場所を再確認してください。通常は、C:\Winnt\system32\repl\import\scripts フォルダです。 禁止されているリソースにアクセスできません。 システム ポリシーが、所定の場所で使用可能になっています。
NTLMv2 認証の検証 NTLMv2 認証が要求されるようにドメイン コントローラを設定します。 クライアントが正常にログオンできます。
セキュリティ構成マネージャの検証 セキュリティ テンプレートを構築して、ドメイン内の 1 台以上のコンピュータに自動的に適用されるようにします。 %winnt%\security\templates フォルダにあるテンプレートのセットを確認します。 メンバ サーバーおよびワークステーションをセキュリティ保護できます。 テンプレートは、所定の場所で使用可能になっています。
長いファイル名の作成確認 8.3 形式よりも長い名前を持つ新しいファイルを作成します。 8.3 形式の名前のファイルにはアクセスできません。
自動実行機能の検証 コンピュータのドライブに自動実行可能なディスクを挿入します。 コンピュータのドライブに自動実行可能なディスクが挿入されても、自動実行が動作しません。
OS/2 サブシステムまたは POSIX サブシステムが動作しないことの検証 ユーザーがプロセスを開始してログオフし、その次にシステムにログオンしたユーザーが、前のユーザーのプロセスにアクセスすることができます。 OS/2 サブシステムまたは POSIX サブシステムに依存するアプリケーションが使用できません。
オブジェクトの保護レベルの検証 さまざまな状況下で、悪意のあるユーザーがカーネル オブジェクトの属性を変更しようとします。 悪意のある呼び出し元が自分の権限を格上げすることをシステムが許可しません。
ユーザーによるプリンタ ドライバの追加の防止 悪意のあるユーザーが、プリンタ ドライバを追加して権限を格上げしようとします。 Printer Operators グループおよび Administrator グループのメンバが、新しいプリンタ ドライバを追加できます。
Administrator の自動ログオンが無効であることの検証 コンピュータの再起動時に、Administrator として自動ログオンしてみます。 Administrator の自動ログオンが無効になっています。
起動時のタイムアウトの検証 再起動して、起動時のタイムアウトを確認します。 起動時のタイムアウトは、30 から 0 に変更されています。
SCM のインストールの検証 クライアントで、[スタート] メニューの [ファイル名を指定して実行] をクリックし、「mmc」と入力して Enter キーを押します。 SCM の Microsoft 管理コンソールが使用可能になっています。
[](#mainsection)[ページのトップへ](#mainsection) ### 要約 Windows NT には、最新のセキュリティ機能が完全には補完されていませんが、Windows NT システムの脅威およびセキュリティ リスクを軽減する多数の機能や技術が備わっています。 初期のオペレーティング システムおよび更新プログラムのベースラインのインストールに始まり、起動の強化、ディレクトリ サービス クライアント アドインの展開、さらには、システム ポリシーを効果的に使用した、NTLM 認証やパスワード生成などのセキュリティに不可欠な要素の制御、ファイル システムおよびサービスの強化、そして最後に、その他多数の強化対策の採用など、Windows NT を可能な限り安全に保つためにオペレーティング システム レベルで行うことのできる対策は数多く存在します。 #### 詳細情報 - Windows NT 4.0 Service Pack 6a は、[/japan/ntserver/downloads/sp6a.mspx](https://www.microsoft.com/japan/ntserver/downloads/sp6a.mspx)(英語) から入手できます。 - Windows NT Server Service Pack 6a に関する FAQ には、セキュリティに特化した情報が記載されています。この FAQ は、