ネットワークの強化とセキュリティ - ネットワーク セキュリティの脆弱性および軽減の検討

第 3 章 : ネットワークの強化とセキュリティ

公開日: 2004年11月17日

この章では、ネットワーク セキュリティの脆弱性と、これらの脆弱性に対してネットワーク上のホストを強化するプロセスについて説明します。 ネットワークのセグメンテーション、Transmission Control Protocol/Internet Protocol (TCP/IP) スタックの強化、およびホスト保護のためのパーソナル ファイアウォールの使用が説明の対象となります。

トピック

背景
ネットワーク セキュリティの設計
実装
要約

背景

古いシステムは、攻撃者の無用な関心を集める場合があります。そのようなシステムが存在するで、一定の高いレベルの信頼性が実現されているか、または内部アプリケーションとのやり取りが行われていることがわかるためです (この点は、古いシステムが保持され続ける一番の理由でもあります)。 この理論値に加えて脆弱性が見つかると、古いシステムは攻撃者にとって非常に魅力的な存在になり、当然、さらに調べられる対象となります。

古いシステムをセキュリティ保護する場合は、環境全体の中でそれらのシステムが存在する場所を考慮する必要があります。 ネットワーク全体の設計および構成に注意することによって、敵意のあるトラフィックの量を古いシステムに到達する前に可能なかぎり制限する論理ポイントを、その中に作成することができます。 このような対策を、あとの章で紹介するシステム固有の強化対策に追加します。

従来は、境界ネットワークという用語は、企業ネットワークがインターネットとつながるポイントで切り離されたネットワーク セグメントを意味します。 外部の保護されていないインターネットと交信する必要があるサービスおよびサーバーは、境界ネットワーク (非武装地帯 (DMZ)、スクリーン サブネットとも呼ばれています) に配置されます。 これは、公開されているサービスの脆弱性を攻撃者が悪用できる場合でも、信頼できる内部ネットワークに 1 段階しかアクセスできないようにするためです。 ネットワーク全体の保護を強化する方法の 1 つとして、境界ネットワークを扱うのと同じように古いシステムを扱うという方法があります。すなわち、古いシステムを独自のネットワーク セグメントに配置し、ネットワーク上の他のホストから切り離します。 この方法には 2 つの利点があります。侵害された古いシステムがネットワークの残りの部分に影響するリスクが軽減され、古いコンピュータとの間で送受信されるネットワーク トラフィックのフィルタリングおよびブロッキングを積極的に実行できるようになります。

: Microsoft® Windows NT® 4.0 または Microsoft Windows® 98 システムは、境界ネットワークに配置した場合でも、インターネットに直接公開しないことをお勧めします。 これらのシステムは、内部ネットワークでの使用に限定してください。

ネットワーク セキュリティに関する考慮事項

環境内の古いシステムは、境界領域環境を扱うのと同じように保護する必要があります。 ネットワークを強化およびセキュリティ保護するには、ビジネス ニーズ、予算上の制約、および次のセキュリティ考慮事項 (詳細については後述) のバランスをとる必要があります。

  • 多層防御

  • 境界領域の制御

  • 双方向の脅威

  • 異なるサービスの分離

  • 障害計画およびインシデント対応

  • バックアップ

  • 時間の同期

  • 監査と監視

  • 意識的な情報確認

多層防御

現在の脅威からコンピュータ システムを保護するには、IT 管理者は、多層防御戦略を考慮する必要があります。 多層防御戦略では、リスクを増大させる要因の排除とリスクを削減する制御の追加をどう組み合わせるかに重点が置かれます。 ソフトウェア、ハードウェア、プロセス、および担当者がいかに優秀であっても、攻撃者が固く決意している場合は、単一の保護層を通り抜ける方法を見つけ出す可能性があります。 多層防御セキュリティ モデルでは、重要な資産を保護する方法として、環境全体で複数のセキュリティ層を使用することで侵入やセキュリティの脅威に対する防御を行います。 この多層化によるシステム セキュリティ対策を使用すると、情報システムに侵入する際の攻撃者の労力が増大するため、リスクに対する危険度および侵害の可能性が全体的に低下します。

多層防御を使用したセキュリティ対策では、強力な境界領域防御または強化されたサーバーのみに頼るのではなく、潜在的な脅威に対して集約化された複数の異なる防御に依存します。 多層防御の使用によって他のセキュリティ対策の必要性が低下するわけではありません。多層防御は、すべてのコンポーネントの強度の結合によって成立します。 重複する層でセキュリティを構築すると、次のような 2 つの大きな利点があります。

  • 攻撃の成功が難しくなります。 層が増えれば、それだけペネトレーションを成功させるための攻撃者の労力も増大します。また、進行中の攻撃を検出できる可能性も高くなります。

  • デバイス内の新しい脆弱性の影響を軽減できます。 層ごとに、異なる種類の攻撃に対する保護が行われるか、または他の層と同じ弱点を持たない範囲の重複が行われます。 その結果、まだ損なわれていない防御対策によってこれに従属するトランザクションがブロックされるため、多数の新しい攻撃を防止することができ、中核となる欠陥に対処する時間を作ることができます。

この防御をまだ利用できるようになっていない場合は、ビジネス プロセスを調整して、複数の層への変更を整合化できるようにする必要があります。

ネットワークのセグメンテーション

境界ネットワークを確立して、内部ネットワークと外部ネットワークの間のトラフィックの分離を可能にする境界を作成します。 この境界が配置されると、ネットワーク トラフィックの分類、検疫、および制御を実行できます。 理論上の理想的な境界ネットワークは、必要な対話を可能にするための最小限のトラフィック以外は、トラフィックを基幹システムに通過させません。 それ以外で境界を越えるすべてのトランザクションは、潜在的な防御の穴、つまり攻撃者が制御を取得する可能性のある経路を意味します。 新しいサービスが有効になるたびに、脆弱性と抜け穴を生み出す可能性のあるコードが追加され、脅威にさらされる領域が増大します。

従来のセキュリティ ポリシーでは、ネットワーク上の、インターネットと直接通信を行うホストと直接通信を行わないホストの間に境界を定義することが求められました。 しかし、古いシステムを境界の一部として扱い、"通常の" ネットワークと古いシステムが含まれたセグメント間の相互通信を厳しく制御することによって、セキュリティを強化することができます。 古いシステムを独自のネットワーク セグメントに分類すると、次のような 2 つの重要な利点があります。

  • 古いシステムを、境界ネットワークのコンピュータと同じように扱うことができます。 前のバージョンの Windows には、新バージョンのセキュリティ機能がすべて含まれているわけではないため、新しいシステムよりも侵害のリスクが高く、それに応じた保護が必要です。

  • 古いシステムの制御が向上します。 これらのシステムを独自の境界に置き、異なるネットワーク間を通過するトラフィックの入念な監視と制御を実行できるようになるネットワーク境界制御 (ファイアウォールなど) から分離します。

双方向の脅威

多くの攻撃が成功するのは、目標のシステムと境界外で接触を開始できるようになるためです。 この接触は、敵意のあるシステムと確立されるように設計されており、これで敵意のあるシステムが目標に到達できるようになります。 別の一般的なシナリオでは、ワームやウイルスが関係します。システムが侵害されたあと、マルウェアが、1 つのシステムから他のシステムへの拡散、信頼関係の悪用、さらに拡散するための外部システムの侵害を開始します。 また、これらのシステムが敵意のあるシステムに到達して、さらなる活動のためのバック ドアとなる場合もあります。 境界は、保護対象システムに入ってくるトラフィックだけでなく、保護対象システムから出て行くトラフィックも制限するように設計する必要があります。 このように設計した場合、侵害が行われた際に使用環境に反するようなサーバーの使い方は行いにくくなります。 しかし、システム自体が防御層の侵害を手助けすることがなくなるため、攻撃者の作業も困難になります。

異なるサービスの分離

パフォーマンスを懸念する場合、高価なハードウェアを最大限利用できるように、複数のサービスを 1 台のコンピュータにインストールしがちになります。 ただし、このようなことを無差別に行うと、システムを適切にセキュリティ保護しにくくなる場合があります。 システムがホストするサービスおよび生成するトラフィックを慎重に分析し、必要なサービスおよびリモート システムの組み合わせにトラフィックが制限されるように適切な境界対策がとられていることを確認してください。 その逆も当てはまります。類似のシステムおよびサービスをグループ化し、ネットワークを慎重に分割すると、容易に保護を実行できるようになります。

障害計画およびインシデント対応

適切なセキュリティ計画および実装のプロセスには、"この対策が失敗したらどうなるか" ということを自問する作業も含まれます。ミスや事故など予期しない事態の結果を把握しておくことが重要です。 そのような場合を特定しておくと、そのような場合の影響を軽減し、1 つの失敗が一連の事態を引き起こした結果古いシステムが完全に悪用されるといったことが起こらないように、防御を設計できます。 たとえば、ウイルスまたはワームの感染が拡大したときの対処を記述した定義済みの計画、および侵害の疑いがあるときの対処を記述した計画が、すべての組織で必要です。 ほとんどの組織では、インシデント対応チームには IT スタッフ、法務部門、ビジネス管理部門の担当者が含まれている必要があります。関係者全員が、セキュリティ侵害への一貫した対応の実施に参加します。 マイクロソフトの「Security Guidance Kit」(https://www.microsoft.com/japan/security/guidance/default.mspx から入手可能) には、独自のインシデント対応計画の設定および実行方法に関する情報が収録されています。

: マイクロソフトでは、「インシデント対応 : Microsoft 社内におけるセキュリティ管理」で社内のインシデント対応プロセスおよびアプローチについて説明しています。このホワイト ペーパーは、Web サイト https://www.microsoft.com/japan/technet/itsolutions/msit/security/msirsec.mspx で参照できます。

バックアップ

攻撃者がシステムに入り込むことに成功した場合でも、主要なリソースおよびデータの取り込みを防止できれば、それは一時的なものです。 適切なバックアップおよび復元の手順があれば、最悪の事態が発生しても、再構築および回復に必要なデータを確保することができます。 ただし、データのバックアップの確保は手始めにすぎません。 侵害または影響を受けたシステムを迅速に再構築できる必要があります。元のハードウェアでフォレンシック分析を実行する必要がある場合 (保険請求の資料作成または攻撃経路の特定を行う場合など)、使用可能な予備のハードウェアとソフトウェア、およびテスト済みのセットアップ手順が必要になる場合があります。

時間の同期

攻撃を特定するさまざまな手がかりを、複数のシステム全体に (特に境界ネットワークに) 散在させることができます。 このデータを相互に関連させる方法がない場合、手がかりを見つけて関連付けを行うことができません。 このプロセスを補助するため、すべてのシステムで同じ時刻を使用する必要があります。 net time コマンドを使用すると、ワークステーションおよびサーバーとドメイン コントローラとで時間を同期させることができます。 サードパーティ製 Network Time Protocol (NTP) を実装すると、サーバーは他のオペレーティング システムおよびネットワーク ハードウェアと時間の同期を共有でき、ネットワーク全体で統合された時間ベースを実現できます。

監査と監視

システムの防御がどれほど強力であっても、定期的に監査および監視を行う必要があります。 通常のトラフィック パターン、および攻撃と応答がどのようなものかを知っておくことは非常に重要です。 この感覚を身に付けておくと、有害な事態の発生時にはネットワーク トラフィックのパターンが変わるため、その兆候を捉えることができます。 監査と監視の対象となる主要なものに認証があります。 認証の失敗が突然連続して発生した場合、それはシステムがブルート フォース辞書攻撃を受けていることを示す唯一の警告であることがあります。 ブルート フォース辞書攻撃では、既知の単語や英数文字列を使用して単純なパスワードの解読が行われます。 同様に、パターンから外れた認証が成功した場合、システムが少なくとも一定レベルで侵害されており、攻撃者が最初の悪用を利用してシステムに完全にアクセスしようとしていることを示している可能性があります。 イベント ログを定期的に収集およびアーカイブし、自動および手動の分析と組み合わせると、多くの状況でペネトレーション試行が失敗した場合と成功した場合で決定的な違いがあることがわかります。 Microsoft Operations Manager (MOM) のような自動化されたツールを使用すると、ログに記録された情報の監視と分析を容易に実行できます。

意識的な情報確認

何もかも知ることはできませんが、他の管理者が経験するさまざまな脅威に常に注意し意識することは可能です。 現在のセキュリティの脅威および問題に関する最新情報の提供を目的とした、いくつかの優れたセキュリティ リソースがあります。 これらのリソースの一覧は、この章の最後にある「関連情報」の項に記載されています。

ページのトップへ

ネットワーク セキュリティの設計

内部および外部の攻撃に対してネットワークを強化するために使用できる具体的な対策は、いくつか存在します。 それには、次のようなものがあります。

  • 古いシステムを、境界領域に類似した独自のネットワーク セグメントに分離し、アクセス制御規則、ファイアウォールなどの技術で保護します。

  • ファイアウォールを展開します。ネットワーク ハードウェア デバイス、Microsoft Internet Security and Acceleration (ISA) Server、または他の製品を使用してネットワーク レベルで行うか、あるいは個々のワークステーションで行います。

  • TCP/IP スタックを強化します。強化するには、スタックが異常なパケットを処理する方法の設定に、さらに制限された設定を適用します。

  • Windows NT 4.0 に組み込まれているポートおよびパケット フィルタリング機能を使用して、セキュリティを追加します。

前提条件

このソリューションには、次の前提条件が必要です。

  • ネットワーク セグメンテーション用の未使用のネットワーク サブネット、ならびに、必要なホストおよび要求されるネットワーク オーバーヘッドすべてを十分含めることができるサイズの保有。

  • TCP/IP、ネットワーク内で使用されるポート、パケット フィルタリング、およびルーティングに関する知識。

  • さまざまな TCP/IP オプション、古いシステムとのやり取りが行われるその他のデバイスの特徴に関する完全な知識。

アーキテクチャ

ネットワーク アーキテクチャの設計では、いくつかのセキュリティに関する考慮事項が適用されます。

ネットワークのセグメンテーション

ネットワークのセグメンテーションは、ネットワークの異なるセグメント上でのホスト間のトラフィック フローを制御します。 セグメント化されたネットワークでは、正しく設計されている場合、適切なトラフィックのみがネットワーク内のセグメント間で転送されるため、パフォーマンスとセキュリティが向上します。 ハブをスイッチに変更すると、パスワードなどの機密のトラフィックを求めてネットワークを探るハッカーの能力を最小に抑えることができますが、スイッチでその可能性が完全に排除されるわけではありません。 スイッチに接続されている侵害されたシステムは、やはり、他のシステムからの情報の収集に使用されます。 したがって、スイッチはネットワーク セキュリティではなく、ネットワークの競合およびパフォーマンス問題を解決する手段だと考える必要があります。

ポートおよびパケット フィルタリングをパーソナル ファイアウォールと併用する方法も、古いシステムを侵入および侵害から保護することができます。 ただし、管理上の負荷を考えると、ファイアウォール ソフトウェアをユーザーのコンピュータにインストールして管理することは、現実的ではない場合もあります。 中央サーバーおよびデータベースからリモートで管理および構成できるファイアウォール ソフトウェアをインストールするのではない場合、管理者は、公開後に個々のユーザー ニーズに応じて構成を変更するため、これまで以上に各コンピュータを操作する必要があります。 また、新しいアプリケーションを展開するたびに、そのアプリケーションがもたらす可能性のある追加の脆弱性および失敗ポイントに対応して、追加の管理タスクが必要になる可能性も増大します。

場合によっては数百にもなるパーソナル ファイアウォールの管理に必要なスタッフを用意できない組織もあります。 このような場合、組織は代替案としてネットワークのセグメンテーションを採用するか、ネットワーク保護を強化するセキュリティ機構を追加することができます。 すでに説明しましたが、ネットワークのセグメンテーションとは、境界ネットワーク内の特定のサーバーを検疫することです。 ネットワークを別々のセグメントに分割し、各セグメント内のシステムに保護レベルを追加することでもあります。 セグメンテーションを行うと、トラフィック シェーピング、ポートの監視とフィルタリングなどのネットワーク管理タスクに大幅な柔軟性をもたらすこともできます。各セグメントを個別に、ネットワークのセキュリティ ニーズにも適合させながら、グループ内のユーザー ニーズに合った独自の構成にすることができるためです。 実質上、ネットワークのセグメンテーションによって、ワークグループ レベルにファイアウォールを適用できます。ワークグループ レベルで境界ファイアウォールと併用して、ネットワーク全体のセキュリティ保護を強化することができます。

ネットワークのセグメンテーションは、ネットワークの外部および内部からの 2 とおりの潜在的な脅威に対処できます。 エンジニアリング部門の従業員が人事部のファイル サーバーに入る方法を見つけるという従来からある事例は、ネットワークのセグメンテーションならローカル エリア ネットワーク (LAN) に利点をもたらすことができるという状況の適例です。 人事部のセグメントの先頭に配置されたファイアウォールは、トラフィックを選別して、承認されていない部門のコンピュータからのアクセスを防止します。 同様に、エンジニアリング部門のセグメントは他のセグメントから保護されます。

ネットワークのセグメンテーションを使用すると、個別のセキュリティ ゾーンにネットワークを構成できます。各セキュリティ ゾーンでは、規則に基づいた独自のトラフィック管理をセグメントごとに行うことができます。 ネットワークは、複数の方法でセグメント化できます。 たとえば、ハードウェアベースのファイアウォールを各セグメントに展開し、ネットワークを物理的にセグメント化するという方法を選択できます。 または、個々のグループを保護する仮想 LAN およびセグメンテーション機能を備えた、単一の集中型ファイアウォールを展開することもできます。 選択するソリューションは、最終的には、ネットワーク トポロジと各グループのセキュリティ ニーズによって決まります。 少なくとも、最大のリスクを発生させるセグメント (ワイヤレス ネットワークなど) をネットワークの残りの部分から切り離し、積極的な規則を課して、そのようなセグメントとの間で承認されていないトラフィックが送受信されることを防止する必要があります。

最適なネットワークのセグメンテーション ソリューションを決定するには、まずネットワーク構造を確認します。 そのあと、最大のリスクを発生させるセグメントを特定して、ソリューションの構築を開始することができます。 既存のファイアウォール ベンダが、ソリューションの展開に役立つ技術情報および製品を提供できる場合もあります。

Trey Research は、本社にある古いシステムのセグメント化を選択しました。そのためには、Windows NT 4.0 サーバーと Windows 98 クライアントを別のネットワーク セグメントに配置し、そのセグメントと残りの企業ネットワークとの間にファイアウォールを配置します。 そのファイアウォールのネットワーク アドレス変換 (NAT) の使用を有効にすることで、Trey のエンジニアは、そのセグメントの入力および出力トラフィックを簡単にブロックまたはフィルタできるようになります。こうして防御機能が追加されます。

パーソナル ファイアウォール

Windows NT の TCP/IP スタックに組み込まれている保護と対策は、出発点ではありますが大きな限界があり、多数の展開を行うには不適当です。 また、Windows 98 クライアントを保護する機能はありません。 ソフトウェア ファイアウォール、別名パーソナル ファイアウォールを使用すると、大体において保護を追加できます。 このような専用アプリケーションは、ネットワーク スタックの先頭に位置し、ネットワーク活動の傍受、許可されたトラフィックの構成済みデータベースとの対照分類、および試行の許可または拒否を行います。

パーソナル ファイアウォールの大きな長所は、個々のコンピュータのトラフィック パターンに明確に対応できることです。 ただし、アプリケーションであるため、偶然または悪意から、簡単にアクセスおよび妨害される可能性があるという短所があります。

それでも、パーソナル ファイアウォールによって古いサーバーおよびクライアントにセキュリティの層が追加され、指定されたホスト宛のトラフィックを特定のポートで制限する機能、要求されたサービスによって脅威にさらされる領域を減らす機能など、古いシステムに欠けている重要な機能を使用できるようになります。 ファイアウォールは、ネットワーク スタックにフックする場所に応じて、オペレーティング システムまたはリスン状態のアプリケーションの脆弱性に到達する前に敵意のあるトラフィックをブロックできます。

パーソナル ファイアウォールはまた、トロイの木馬、ウイルス、およびワームによる損害の抑制にも役立ちます。 このようなマルウェアによって、送信トラフィック、および不法な接続に対するポートのリスニングが開始される場合があります。 このトラフィックには、(内部、外部双方のメッセージング システム宛の) スパムの中継から他のホストやネットワークの脆弱性および抜け穴のスキャンの実行まで、複数の目的があり、ディスク容量、プロセッサ サイクル、メモリ、およびネットワーク帯域幅を浪費します。 このようなアプリケーションおよびそれらとの接続の開始が原因で、感染や駆除の問題に加えて、二次的な影響としてサービス拒否 (DoS) 期間が発生する場合があります。

拡張された入口フィルタリングおよび出口フィルタリング機能以外にも、多くのパーソナル ファイアウォールでは、要求元の実行可能ファイルに基づいてネットワーク アクセスを許可または拒否する機能があります。 この機能は、使用されるポートおよびプロトコルに関係なく、特定のアプリケーションをブロックしてネットワークにアクセスできなくするために使用できます。つまり、あらかじめ承認されているアプリケーションのみが許可されます。 これにより、ユーザーは、プロトコルが単純なアプリケーション (ピア ツー ピア ファイル共有、インスタント メッセージングなど Hypertext Transfer Protocol (HTTP) を使用して接続を行うアプリケーション) を使用したセキュリティ構成の裏をかかれないようになります。

パーソナル ファイアウォールは、正しく設定および構成するのに少し時間がかかる場合があります。少なくともトランザクションが正しく区分され、許可または拒否に分類されるまでは、文字どおりすべてのトランザクションが綿密に検査されるためです。 パーソナル ファイアウォールでは、承認されたアプリケーションおよびサービスによって生成されるネットワーク トラフィックのすべてのビットに関する詳細情報が必要になります。やり取りが一度ブロックされると、必要なプログラムの実行が無効になるためです。 メンテナンス、更新プログラムの適用、および更新も必要です。 構成データベースを一元的に管理および保守する機能など、企業およびエンタープライズでの使用を目的とした機能を備えたパーソナル ファイアウォールを探してください。

ISA Firewall Client を ISA Server と併用すると、フィルタリングおよびポリシー強制機能を強化できます。トラフィックの発生元または宛先だけでなく、ユーザーの ID に基づいてトラフィックを制御できるようにもなります。 すべてのトラフィックは、戦略的に配置されたサーバーによって監視および制御できます。また、エンタープライズ全体のポリシーは簡単かつ迅速に更新できます。

Windows NT 用にルーティングとリモート アクセス サービス (RRAS) をダウンロードするというオプションもあります。 RRAS は、Routing Information Protocol (RIP)、ダイヤルアップ、仮想プライベート ネットワーク (VPN) 機能などの動的なルーティング プロトコルを主にサポートしますが、Windows NT に組み込まれている基本的なポート フィルタリングに加えて、受信ネットワーク トラフィックのアクセス制御を定義する機能も使用できます。 RRAS は、「Routing and Remote Access Service Download」ページ https://www.microsoft.com/technet/network/rras/default.mspx (英語) から無料でダウンロードできます。

ただし、RRAS やアドオン ソリューションの使用には、大きな短所が 1 つあります。 アドオンはソフトウェア サブシステムであり、Windows サービスとして実行されるため、ネットワーク インターフェイスおよびプロトコルが初期化されたあとで起動します。 したがって、再起動またはシステム停止中に敵意のあるトラフィックが入り込む可能性があります。 パーソナル ファイアウォール、ISA Server Firewall Client、または RRAS を使用する場合、それ以外の保護の形式および層がないと絶対的なセキュリティを実現できません。 やはり、複数の防御を使用して各層の弱点を補い打ち消しあうことで、最も優れた保護を実現できます。

Trey Research はすでに、Windows XP に組み込まれたインターネット接続ファイアウォール (ICF) を一部のシステムで使用しています。 Trey は、Windows 98 および Windows NT Workstation 4.0 を実行しているコンピュータを対象に、サードパーティ製パーソナル ファイアウォール製品のライセンスを購入して展開することを選択しました。 これにより、会社の分離されたネットワーク上の内部トラフィックに対して入口フィルタリングおよび出口フィルタリングの両方を適用できるようになり、またデータ収集が一元化されたため、ネットワーク トラフィックの種類と量に関する可視性を継続的に実現できるようになりました。

Windows NT のポートおよびパケット フィルタ

ネットワーク化されたコンピュータを保護する最適な方法の 1 つは、受信および処理するネットワーク トラフィックの種類を制限することです。この方法を実行するには、通常、ある種のパケット フィルタが必要です。 パケット フィルタリング戦略を設計する場合、ほとんどの管理者は、ルーターおよびネットワーク チョークポイントのことを考えます。 ただし、Windows NT には、TCP/IP セキュリティという基本的なパケット フィルタリング機能が備わっています。 この機能は、それ自体では十分な保護を提供できませんが、ステートフル パケット フィルタリング デバイスと併用すると、優れた二次的な防御層が作成されます。

Windows NT に組み込まれている TCP/IP セキュリティ機能の主な長所は、プロトコル ドライバの不可欠な要素として TCP/IP ネットワーク スタック内に実装されているという点です。 このように分かちがたく統合されている利点として、保護されるインターフェイスがアクティブであるかぎり、すべての設定が常にアクティブになることが挙げられます。ネットワーク トラフィックがフィルタリングされていない時間 (起動時など) は存在しません。 TCP/IP セキュリティは、一部のパーソナル ファイアウォール ソフトウェアに支障が出る場合がありますが、アプリケーションに透過的です。

その名前にもかかわらず、TCP/IP セキュリティでは、TCP と User Datagram Protocol (UDP)、およびその他の IP プロトコルをポート単位でフィルタリングすることができます。 アクティブなフィルタは、受信トラフィックをブロックしますが、送信トラフィックおよびローカル ホストによって開始された TCP 接続への応答は許可します。 ただし、いくつかの制限があります。

  • ポート フィルタは、すべてのホストのトラフィックを、許可するかブロックするかのいずれかです。 Windows 2000、Windows XP、および Microsoft Windows Server™ 2003 に組み込まれている IP セキュリティ (IPsec) 拡張機能で実行できるような、きめ細かい制御レベルは設定できません。

  • フィルタは、実際にはステートフルではないため、動的にリンクして二次接続のトラフィックを許可することはできません。 Windows の以降のバージョンにある IPsec 実装を使用すると、ほとんどのハードウェア ファイアウォールと同様に二次接続を許可できるようになります。

ここで説明した単純なポート フィルタリング機能以外にも、Windows NT TCP/IP スタックには、脅威となるネットワーク トラフィックを閉じたり軽減する点で特に興味深い、多数の調整可能なパラメータが備わっています。 時間の経過とともに、Windows NT 4.0 TCP/IP ネットワーク コードの欠陥を悪用するさまざまな攻撃が生み出されました。これらの欠陥はすべてサービス パックおよびセキュリティ更新によって対応済みですが、ネットワークに保護を追加するためにこれらの変更の適用が依然として重要な場合があります。 これらの調整では、通常、regedit32 または regedit ツールを使用してレジストリを直接編集する必要があります。 マイクロソフト サポート技術情報 (KB) 120642「Windows NT および Windows 2000 での TCP/IP および NBT の設定」 https://support.microsoft.com/kb/120642 に、調整可能なパラメータの一覧が記載されています。ネットワークおよびシステム セキュリティに密接に関係するものについては、次の項で説明します。

Trey Research は、古いホストでのポートおよびパケット フィルタリングを定義しました。この定義により、サポート技術情報 150543「Windows NT、Terminal Server、および Microsoft Exchange サービスの TCP/IP ポートの使用について」 https://support.microsoft.com/kb/150543 の一覧に挙げられていないポート、またはネットワーク上の他のアプリケーションによって使用されているポートから送信されるトラフィックは、内部ネットワークを離れてインターネットに移動できないようになりました。 そのため、機密性の高いネットワーク トラフィックが、制御できないネットワーク上にブロードキャストされることはなくなりました。

SYN フラッドの保護

SYN (synchronization) フラッドは、TCP サービスに対する一般的な攻撃経路です。 TCP クライアントで新規接続が開始されると、新規接続の要求を示す SYN フラグが設定された空の TCP パケットが、リスンしているサーバーに送信されます。 サーバーは、SYN および ACK (Acknowledgment) フラグの両方が設定された応答パケットを送り返します。 次に、クライアントが ACK パケットに応答し、3 方向のハンドシェイクが完了して、接続が開きます。

最終的な確認を受信するまで、TCP/IP ドライバは、この接続に SYN_RCVD (SYN を受信済み) 状態を割り当てます。 何らかの理由で Windows が SYN+ACK パケットへの応答を受信しない場合、既定では 1 秒間待機してから SYN+ACK パケットを再送信します。 3 秒間のタイムアウトのあと、2 回目の再送信が行われ、さらに 6 秒過ぎると最後の再送信が行われます。 接続要求ごとに、サーバーには一定量のメモリおよび別のカーネル構造が割り当てられる必要があります。要求を大量に受信した場合、リソースが急速に使い尽くされて DoS が発生する可能性があります。 適用可能なレジストリ キーは、次のとおりです。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\SynAttackProtect (REG_DWORD):

  • 0 = 無効 (既定)

  • 1 = 接続が確立されるまでルート キャッシュ エントリの作成を遅延

  • 2 = 3 方向のハンドシェイクが完了するまで Winsock ドライバへの通知を遅延 (推奨)

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\TcpMaxHalfOpen (REG_DWORD):

  • このキーは、IP パケットが SynAttack 状態を起動するまでの、SYN_RCVD 状態でいられる最大接続数を定義します。 既定値は 100 です。

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ Parameters\TCPMaxHalfOpenRetried (REG_DWORD):

  • このキーは、SynAttack を起動するまでの、SYN_RCVD 状態にあり、かつ 2 回以上再送信を実行する最大接続数を定義します。 既定値は 80 です。

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ Parameters\TCPMaxPortsExhausted (REG_DWORD):

  • このキーは、SynAttack を起動するまでの、バックログがないために拒否される接続要求数を定義します。 既定値は 5 です。

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\ TCPMaxConnectResponseRetransmissions (REG_DWORD):

  • このキーは、SYN_RCDV 状態での再送信試行回数を定義します。 既定値は 3 です。すなわち、再送信が全部で 3 回行われます。 この値を 1 に設定すると、再送信は 1 回のみ試行されます。

サポート技術情報 146241「悪質なため、使用できない インターネット サーバーは、SYN が攻撃します」https://support.microsoft.com/kb/142641 に、これらの設定の詳細な説明が記載されています。

Trey Research は、ここに挙げたレジストリ キーすべての設定を古いホストで強化し、SYN 攻撃がこれらのシステムに悪影響を及ぼす可能性を軽減しました。 Trey Research では、最も厳しく制限する設定は使用しませんでした。通常の SYN トラフィックがネットワークを横断するという正当なニーズがあり、正常なネットワーク トラフィックの移動を妨害しないようにするためです。 Trey のシステム管理者は、既定の設定に対して行った変更の再検討が必要になる可能性があることを理解しており、ネットワーク上の SYN トラフィック量の予防的な監視を行なっています。

バックログ サイズの制御

TCP/IP を使用するアプリケーションは、Winsock アプリケーション プログラミング インターフェイス (API) を使用します。この APIは、Winsock カーネル モードのドライバ、afd.sys によって提供されます。 Winsock API により、クライアント接続を開き、サーバー接続用のポートでリスナを確立するメカニズムがアプリケーションに提供されます。 listen() 関数は、特定のポートへの接続試行をリスンしてアプリケーションに転送するように、Winsock に指示するために使用されます。

この関数で指定する必要があるパラメータは、バックログ サイズです。これは、スタックが処理できるようになるまで保留中の着信接続を保持するキューです。 バックログは、キューの最大長を指定します。既定では、Windows NT Server では 200、Windows NT Workstation では 5 に設定されています。 Windows NT 4.0 Service Pack 2 (SP2) では、動的バックログ機能が導入されています。この機能により、TCP/IP スタックはバックログ キューのサイズを必要に応じて調整し、最新のネットワーク状態に対応させることができます。

バックログ キューを調整するこの機能は、既定ではオフになっているため、次のレジストリ エントリを使用して有効にする必要があります。 また、この機能を利用するには、呼び出し側のアプリケーションが MinimumDynamicBacklog パラメータよりも大きいバックログ キューを要求する必要があります。 適用可能なレジストリ キーは、次のとおりです。

HKLM\SYSTEM\CurrentControlSet\Services\AFD\ Parameters\EnableDynamicBacklog (REG_DWORD):

  • 0 = 無効 (既定)

  • 1 = 有効 (推奨)

HKLM\SYSTEM\CurrentControlSet\Services\ AFD\Parameters\MinimumDynamicBacklog (REG_DWORD):

  • このキーは、バックログ キュー内のエントリ数の最小値を定義します。使用可能なエントリ数がこの最小値を下回る場合、エントリを作成する必要があります。 20 が推奨値です。

HKLM\SYSTEM\CurrentControlSet\Services\ AFD\Parameters\MaximumDynamicBacklog (REG_DWORD):

  • このキーは、バックログ キュー内に作成できるエントリ数の最大値を定義します。 この数字を、システムのランダム アクセス メモリ (RAM) 32 メガバイト (MB) あたり 5,000 よりも大きく設定すると、攻撃によるメモリの枯渇につながる可能性があります。 ネットワーク サービスごとに、別々のバックログ キューが作成されます。 Trey Research の対象サーバーのシステム RAM は 512 MB であるため、このレジストリ値の上限を決定する式は次のようになります。

  • (512/32)*5000=144000

  • ワークステーション (すべて 256 MB の RAM) の場合、算出値は (256/32)*5000 = 72000 となります。

HKLM\SYSTEM\CurrentControlSet\Services\AFD\ Parameters\DynamicBacklogGrowth-Delta (REG_DWORD):

  • このキーは、追加が必要になった場合にバックログに一度に追加できる新規接続数を定義します。 10 が推奨値です。

サポート技術情報 146241「悪質なため、使用できない インターネット サーバーは、SYN が攻撃します」https://support.microsoft.com/kb/142641 に、これらの設定の詳細な説明が記載されています。

Trey Research では、ここに挙げたすべてのレジストリ キーについて、推奨値を設定することを選択しました。受信した要求によって会社のシステムが処理不可能にならないように、着信接続数を制御するためです。

TCP keep-alive タイマ

TCP keep-alive タイマは、アイドル状態の接続をアクティブのままにしておく、高度な TCP 機能です。 この機能が特に重要になるのは、そのような接続がファイアウォールおよびネットワーク アドレス変換 (NAT) デバイスを通過するときです。ここでは、古くなったエントリが接続およびマスカレード テーブルから定期的に削除されます。

Windows NT には、TCP keep-alive タイムアウトを有効にして定義する機能が備わっています。 この値を小さくすると、使用不能な接続でリソースが長時間使用中のままになることを防止できます。 この値を設定するには、次のレジストリ キーを使用します。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\KeepAliveTime (REG_DWORD):

  • このキーは、keep-alive チェックの間隔をミリ秒単位で定義します。既定では、この値は 7,200,000 (2 時間) です。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\KeepAliveInterval (REG_DWORD):

  • このキーは、応答が受信されない場合に keep-alive パケットが再送信される間隔をミリ秒単位で定義します。既定では、この値は 1000 (1 秒) です。

Trey Research では、TCP keep-alive タイマの設定を変更しませんでした。今のところ、接続が使用中になる時間について問題は発生していないためです。

パスの最大転送単位の検出

パスの最大転送単位 (MTU) の検出は、ホスト間のすべてのネットワーク セグメント上でサポートされる最大パケット サイズを、Windows が自動的に検出できるようにする機能です。 この機能は、"do not fragment" ビット セットが設定された大きいパケットを送信することによって動作します。 介在するルーターが、セグメントの MTU よりも大きいためにこのパケットを転送できない場合、ルーターは Internet Control Message Protocol (ICMP) メッセージを返します。 Windows は、パケットが宛先に送信されるまで、パケット サイズを減らして再試行します。

適切な MTU がリモート ホストに設定された場合、パケットの断片化が回避されます。断片化されると、パフォーマンスが低下しデータ損失や再送信の可能性が高まります。 断片化されたパケットはセキュリティ リスクでもあり、断片化されたパケット ハンドラは、バッファ オーバーフローを発生させる可能性があります。フラグメントを境界でフィルタリングできれば、多数の攻撃を削減することができます。 パスの MTU の検出は有効にしておく必要がありますが、ICMP タイプ 3、コード 4 がファイアウォールを通過してルーティングされるようにする必要があります。 この値を設定するには、次のレジストリ キーを使用します。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\EnablePathMTUDiscovery (REG_DWORD):

  • 1 = 有効 (既定、推奨)

  • 0 = 無効

値を 0 にすると、構成されているローカル サブネットの外部にあるすべてのトラフィックの MTU サイズが、576 バイトに設定されます。 また、この設定にした場合、Windows は MTU 変更の要求に応じません。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\EnablePathMTUBHDetect (REG_DWORD):

  • 0 = 無効 (既定)

  • 1 = 有効

値を 1 にすると、パス MTU の検出中に、Windows はブラック ホール ルーターの検出を試みます。このルーターは、"do not fragment" フラグが設定されたパケットが大きすぎる場合、適切な ICMP 応答を送信せずに、警告なしでそのパケットを破棄します。 この値を有効にすると、再送信の試行回数が増えます。

Trey Research では、パスの MTU の検出の既定値を変更しませんでした。この機能を無効にすると、一部のリモート システムに到達できなくなる可能性があるためです。 同社は、通信パス内のシステムが MTU サイズの削減をサポートできない場合に、ビジネスが中断されることは避けたいと考えています。

ソース ルーティング

ソース ルーティングを使用すると、アプリケーションによりルーティング テーブルを上書きして、発信データグラムの中間宛先を 1 つまたは複数指定することができます。 この機能は、トラブルシューティングで使用する場合は多少有効ですが、現在の運用ネットワーク上で使用することはお勧めしません。 熟練した攻撃者がこの機能を使用して、すべてのネットワーク トラフィックを、パケット取得用の集中化された収集ポイントに透過的に向けさせる可能性があります。 ソース ルーティングを無効にするには、次のレジストリ キーを使用します。これに加えて、ソース ルーティング オプションが設定されているすべての IP データグラムがドロップされるように、外部ルーターを構成します。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\DisableIPSourceRouting (REG_DWORD):

  • 0 = 有効 (既定)

  • 1 = IP 転送が有効な場合、無効

  • 2 = 完全に無効 (推奨)

Trey Research では、攻撃者によるネットワーク データの取得を防止するために、制御範囲内のすべてのホストでソース ルーティングを無効にしました。

反応しないゲートウェイの検出

反応しないゲートウェイの検出を使用すると、Windows により、既定のゲートウェイの応答が停止した時期、および追加構成された既定のゲートウェイへのフェールオーバーを検出することができます。 実際には、この機能はほとんど使用されていません。使用すると、DoS 攻撃の機会を与えることになります。 この機能を制御するには、次のレジストリ キーを使用します。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\EnableDeadGWDetect (REG_DWORD):

  • 0 = 無効 (推奨)

  • 1 = 有効 (既定)

Trey Research では、ネットワーク上の DoS 攻撃の可能性を減少させるために、すべてのホストで反応しないゲートウェイの検出を有効にしました。

ルーターの検出

ルーターの検出は、ICMP Router Discovery メッセージを使用して、既定のルートおよびゲートウェイを探して構成します。 また、攻撃者はこの機能を使用して、スニッフィングや仲介者攻撃などのさまざまな目的でネットワーク トラフィックをリダイレクトすることができます。 この機能をサポートするルーターは、ICMP Internet Router Discovery Protocol (IRDP) メッセージを送信する必要がありますが、これは無効にすることをお勧めします。 また、インターフェイスが IRDP メッセージを受け入れるように、Dynamic Host Configuration Protocol (DHCP) を適切なオプションで構成する必要もあります。

悪意のある構成変更を防止するために、次のレジストリ キーを編集する必要があります。複数のルートを使用する機能が必要な場合は、RRAS アドオンの展開を検討し、セキュリティ保護可能なルーティング プロトコルを使用します。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\PerformRouterDiscovery (REG_DWORD):

  • 0 = 無効 (推奨)

  • 1 = 有効

Trey Research では、ネットワーク内の未承認の構成変更を防止するために、すべてのホストでルーターの検出を無効にしました。

ICMP リダイレクト

ICMP リダイレクトも、潜在的な脆弱性の 1 つに数えられます。これを使用すると、任意の送信者がパケットを偽装して被害者のルーティング テーブルを変更できるためです。 この機能は既定で有効になっていますが、悪意の影響を回避するには、次のキーで無効にする必要があります。

HKLM\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\EnableICMPRedirect (REG_DWORD):

  • 0 = 無効 (推奨)

  • 1 = 有効 (既定)

Trey Research では、各ホストのルーティング テーブルを保護するために、すべてのホストで ICMP リダイレクトを無効にしました。

RPC ポートを閉じる

多くのサービスは、既定では、ローカル ループバック インターフェイスなどのネットワーク インターフェイス上でリスンしています。 たとえば、Microsoft リモート プロシージャ コール (RPC) ポート マッパーは、TCP/135、UDP/135、TCP/1027、および TCP/1028 上でリスンを実行しています。 これらのサービスの中で、RPC クライアント、RPC サーバー、および RPC エンドポイント マッパーの 3 つは、開いているすべてのポートを閉じるように構成できます。 ただし、このような変更を行う場合は、慎重にテストする必要があります。リモート ホストだけでなく、ローカル サービス間の機能も中断される場合があるためです。

Microsoft Exchange および Microsoft SQL Server™ は、RPC を必要とするアプリケーションでは最も一般的に展開されているものです。 また、RPC 呼び出しは、サーバーのリモート管理時に使用されます。 RPC サービスに依存する一般的な組み込みユーティリティは、次のとおりです。

  • DHCP Manager

  • DNS Administrator

  • WINS Manager

  • パフォーマンス モニタ

  • イベント ビューア

  • レジストリ エディタ

  • Server Manager

  • User Manager

RPC がアプリケーションによって使用されているかどうかを判別するには、Windows NT 4.0 の CD-ROM からネットワーク モニタ ツールおよびネットワーク モニタ エージェントをインストールし、それを使用して、上に挙げたポートでアプリケーションが RPC を使用しているかどうかを確認します。

RPC クライアントを無効にするには、次のレジストリ キーを削除します。

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_udp

RPC サーバーを無効にするには、次のレジストリ キーを削除します。

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_tcp

HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_udp

RPC エンドポイント マッパー (rpcss.exe) は、RPC サーバーが有効な場合は複数のポートを開きますが、その代わりに、ローカル以外の Distributed Component Object Model (DCOM) 接続試行を拒否するように構成することもできます。 これは、システムのリモート管理機能に重大な影響を及ぼします。「第 4 章 : Microsoft Windows NT 4.0 の強化」で説明しているディレクトリ サービス クライアントの拡張に特に影響しますが、これは DCOM オブジェクトである Windows Management Instrumentation (WMI) プロバイダに大きく依存しているためです。 次のレジストリ キーを使用して、ローカル以外の DCOM 接続を無効にすることができます。

HKLM\SOFTWARE\Microsoft\OLE\EnableDCOM (REG_SZ):

  • DCOM 接続を無効にするには、値を "N" に設定します。

Trey Research では、内部ホストの RPC ポートの設定を変更しませんでした。多数のネットワーク サービスを使用するためにこれらのポートを有効にする必要があり、また RPC ホストを閉じると一部のアプリケーションにユーザーがアクセスできなくなるためです。

ページのトップへ

実装

前提条件

これらの実装の詳細が正しく動作するには、Trey Research の基本的なインフラストラクチャが、「第 2 章 : セキュリティ リスク管理の統制を Trey Research のシナリオに適用する」の説明のように実装されている必要があります。

概要

このソリューション シナリオを実装するには、次の作業を実行します。

  • ネイティブの Windows NT 4.0 ポート フィルタリングを構成する。

  • Windows NT 4.0 IP チューニング パラメータを構成する。

これらの設定のほとんどのレジストリ ファイルは、このガイドの一部として含まれているツールおよびテンプレート内にあります。

ネイティブの Windows NT 4.0 ポート フィルタリングを構成する

Windows NT サーバーで TCP/IP ポート フィルタリングを有効にする前に、そのサーバーを特定の役割で適切に動作させるには、どのトラフィックが必要かを正確に知る必要があります。 マイクロソフトでは、Windows NT 4.0 で使用される、一般的によく知られたポートの基本リストを提供しています。このリストは、Web サイト https://www.microsoft.com/technet/prodtechnol/winntas/support/port_nts.mspx の「Port Reference for MS TCP/IP」(英語) から入手できます。

その他のアプリケーションについては、それぞれのマニュアルを参照してください。 Windows Server システムの場合は、サポート技術情報 832017「Microsoft Windows サーバー システムのポート要件」 https://support.microsoft.com/kb/832017 を参照することができます。 これらのリストに記載されていないその他のアプリケーションの場合は、アプリケーションのベンダが提供する文書を参照するか、Netmon.exe (Windows NT 4.0 のコンポーネント)、Netstat (現在使用中のポートを示す Windows NT の組み込みユーティリティ)、TCPView (www.sysinternals.com で Sysinternals から入手できる無料のツール) などのネットワーク トラフィック監視ツールを使用して、アプリケーションによって使用されているポートを確認します。

Windows NT ポート フィルタリングは、次の手順により簡単に構成できます。

ネイティブの Windows NT ポートフィルタリングを構成するには

  1. [スタート] ボタンをクリックして、[設定][コントロールパネル] の順に選択し、[ネットワーク] をダブルクリックすると、コントロール パネルの [ネットワーク] が開きます。

  2. [プロトコル] タブで、[TCP/IP プロトコル] を選択し、[プロパティ] をクリックします。

  3. [IP アドレス] タブで [詳細設定] をクリックします。

  4. [詳細な IP アドレスの指定] ダイアログ ボックスで、[セキュリティ処理を行う] チェック ボックスをオンにします。

  5. [構成] をクリックします。

  6. [TCP/IP のセキュリティ] ダイアログ ボックスで、関連するアダプタを選択します (サーバーがマルチホームの場合)。

  7. 既定ではフィルタは定義されていません。TCP、UDP、および IP トラフィックのすべてが許可されています (図 3.1 参照)。 フィルタを有効にするには、TCP、UDP、または IP プロトコルの [一部許可する] チェック ボックスをオンにして、トラフィックを許可するポートおよびプロトコルの番号を追加します。 基本のインフラストラクチャ サービスは必ず許可されるようにしてください。

    3.1 ネイティブの Windows NT ポートフィルタリングを構成する

Windows NT 4.0 IP チューニング パラメータを構成する

Windows NT IP チューニング パラメータを構成するには、次のレジストリ パラメータを編集します。

注意: TCP/IP スタックのチューニングに使用されているパラメータを変更すると、ネットワーク サブシステムがネットワーク上のルーター、スイッチ、およびその他のコンピュータと通信する方法が変更されます。 これらの変更が、運用アプリケーションのパフォーマンスまたは安定性に影響する可能性があります。 運用環境を変更する前に、運用サーバーおよびクライアントの動作および構成を複製したラボ環境で、変更案の徹底的なテストを実施してください。

サーバーの Windows NT IP チューニングパラメータを構成するには

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

  2. 次のレジストリ エントリ (TCP_Params.reg) を、HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters キーに適用します。

    • SynAttackProtect (REG_DWORD) = 2

    • TcpMaxHalfOpen (REG_DWORD) = 100

    • TCPMaxHalfOpenRetried (REG_DWORD) = 80

    • TCPMaxPortsExhausted (REG_DWORD) = 5

    • TCPMaxConnectResponseRetransmissions (REG_DWORD) = 1

    • KeepAliveTime (REG_DWORD) = 7200000

    • KeepAliveInterval (REG_DWORD) = 1000

    • EnablePathMTUDiscovery (REG_DWORD) = 1

    • EnablePathMTUBHDetect (REG_DWORD) = 0

    • DisableIPSourceRouting (REG_DWORD) = 2

    • EnableDeadGWDetect (REG_DWORD) = 0

    • PerformRouterDiscovery (REG_DWORD) = 0

    • EnableICMPRedirect (REG_DWORD) = 0

  3. 次のレジストリ エントリ (AFD_Params.reg) を、HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters キーに適用します。

    • EnableDynamicBacklog (REG_DWORD) = 1

    • MinimumDynamicBacklog (REG_DWORD) = 20

    • MaximumDynamicBacklog (REG_DWORD) = 144000

    • DynamicBacklogGrowth-Delta (REG_DWORD) = 10

  4. 次のレジストリ エントリ (DisableDCOM.reg) を、HKLM\SOFTWARE\Microsoft\OLE キーに適用します。

    • EnableDCOM (REG_SZ) = N

      注意: DCOM を無効にすると、ディレクトリ サービス クライアント拡張機能、WMI、印刷およびファイル共有のリモート管理機能など、いくつかの基本的なリモート管理機能およびその他のアプリケーションが無効になります。 この変更は、運用サーバーに適用する前に、ラボで慎重にテストしてください。

  5. RPC ベースのサービス、アプリケーション、またはユーティリティが使用されていないことを確認したら、次のサブキーを削除します。

    • HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_tcp

    • HKLM\SOFTWARE\Microsoft\RPC\ClientProtocols\ncacn_ip_udp

    • HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_tcp

    • HKLM\SOFTWARE\Microsoft\RPC\ServerProtocols\ncacn_ip_udp

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

ワークステーションの Windows NT IP チューニングパラメータを構成するには

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

  2. 次のレジストリ エントリ (NT4WS_TCP_Params.reg) を、HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters キーに適用します。

    • SynAttackProtect (REG_DWORD) = 2

    • TcpMaxHalfOpen (REG_DWORD) = 100

    • TCPMaxHalfOpenRetried (REG_DWORD) = 80

    • TCPMaxPortsExhausted (REG_DWORD) = 5

    • TCPMaxConnectResponseRetransmissions (REG_DWORD) = 1

    • KeepAliveTime (REG_DWORD) = 3600000

    • KeepAliveInterval (REG_DWORD) = 1000

    • EnablePathMTUDiscovery (REG_DWORD) = 1

    • EnablePathMTUBHDetect (REG_DWORD) = 0

    • DisableIPSourceRouting (REG_DWORD) = 2

    • EnableDeadGWDetect (REG_DWORD) = 0

    • PerformRouterDiscovery (REG_DWORD) = 0

    • EnableICMPRedirect (REG_DWORD) = 0

  3. 次のレジストリ エントリ (NT4WS_AFD_Params.reg) を、HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters キーに適用します。

    • EnableDynamicBacklog (REG_DWORD) = 1

    • MinimumDynamicBacklog (REG_DWORD) = 20

    • MaximumDynamicBacklog (REG_DWORD) = 72000

    • DynamicBacklogGrowth-Delta (REG_DWORD) = 10

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

ページのトップへ

要約

境界ネットワークの概念の拡張は、古いシステムをセキュリティ保護するための有効な対策であり、ネットワーク全体の設計および構成のすべてに保護を追加することができます。 これらの自然なチョークポイントは、パーソナル ファイアウォール ソフトウェアおよび Windows NT 4.0 のネイティブなポート フィルタリングおよび IP チューニング機能によるトラフィック制御と併用することで、複数の保護層を作成でき、このガイドの以降の章で説明する具体的な強化手順をさらに増強することができます。

詳細情報

  • NTBUGTRAQ メーリング リストは、Windows の現在のセキュリティ問題に関する議論を扱った優れたリソースです。 リストの主宰者である Russ Cooper 氏は、マイクロソフトと提携しているわけではありませんが、非常に豊富な知識を持たれています。 リストの購読またはアーカイブの参照については、www.ntbugtraq.com (英語) を参照してください。

  • CERT Coordination Center (CERT/CC) は、セキュリティに関する勧告および情報を提供する中央情報センターです。 詳細については、www.cert.org (英語) を参照してください。

  • Japan Computer Emergency Response Team Coordination Center (JPCERT/CC) は、日本国内、国外のコンピュータ セキュリティに関わる事象への対応、調査を進めており、脅威に関する優れた情報ソースです。 詳細については、 www.jpcert.or.jp を参照してください。

  • SANS Institute は、コンピュータ セキュリティの問題に重点を置いた、さまざまなトレーニング、証明、および調査を提供しています。 詳細については、https://sans.org/ を参照してください。

  • US Computer Emergency Readiness Team (US-CERT) は、米国内のコンピュータ セキュリティ勧告および脅威に重点を置いていますが、現在の脅威に関する優れた情報ソースです。 詳細については、 www.us-cert.gov (英語) を参照してください。

  • 米国家安全保障局は、複数のオペレーティング システムおよびアプリケーションを対象としたさまざまなセキュリティ構成ガイドを提供しています。Web サイトは www.nsa.gov/snac (英語) です。

  • Windows NT 4.0 の RRAS は、「Routing and Remote Access Service Download」ページ https://www.microsoft.com/ntserver/nts/downloads/winfeatures/rras/rrasdown.asp (英語) から入手できます。

ページのトップへ

目次

ページのトップへ