web-dev-qa-db-ja.com

デュアルファイアウォールDMZ

ファイアウォールとDMZについて学習したばかりで、これらが実際にどのように実装されているかを理解するのに苦労していますか?学習したアーキテクチャは次のようなものです。

Double firewall DMZ

たとえば、ユーザーがアカウントを登録してオンラインで購入したり、Webサイトのフォーラムに参加したりできるショッピングWebサイトがあるとします。

セキュリティの観点から、DMZに配置する必要があるアセットと、内部ネットワークに配置する必要があるアセットは何ですか?

2
Robert777

これは、特定の状況、施行しようとしているポリシー、および規制コンプライアンス要件によって異なります。

一般に、Webアプリにはフロントエンドとバックエンドがあります。フロントエンドは、ユーザートラフィックの処理、データの表示/表示、および認証を担当します。バックエンドは通常、アプリケーションの永続性を処理するある種のデータベースです。他の統合ポイントがある場合もあります(たとえば、出荷APIを呼び出すなど)。

一般的なパブリックWebサーバーパターンの詳細については、こちら link をご覧ください。理想的には、認証されていないトラフィックは、可能な限りネットワーク境界の近くで処理されます。外部トラフィックは、フィルタリングプロキシまたはWebフロントエンドで処理されない限り、「DMZ」を通過しないでください。したがって、ソリューションにはDMZのようなコンポーネントが必要です。データベースサーバーのみを含む別のゾーンを作成することもできます。その後、企業ネットワークに到達するには、さらに別のファイアウォールを通過する必要があります。これにより、データベースが危険にさらされたとしても、企業ネットワーク内の他のシステムは危険にさらされません。

これらは単なる一般化であり、現在のテクノロジースタックによってはソリューションが変わる可能性があることを理解してください。

3
CtrlDot

以下の質問にお答えしますが、状況を把握するために、まず以下をお読みください。

使用している図は1990年代のパターンです。はるかに簡単で安全な方法は、3つ以上のインターフェースを持つファイアウォールを使用することです。これには、ファイアウォールルールの設定や、2つのインターフェース間のトラフィックのフィルタリングも含まれます。ここで重要なポイントの1つは、他のセグメントを通過するセグメントのトラフィックがないことです。

3つのインターフェース:

                   +----DMZ
                   | 
Internet---+ Firewall
                   |
                   +---- Intranet

これの少し複雑なバージョンは次のようになります。

4つのインターフェース:

                   +---- Intranet
                   | 
Internet---+ Firewall+--- PCI Zone (Secured Subnet) 
                   |
                   +---- DMZ

これは、人々がその設計を使用していた理由は、元のファイアウォールは非常に高価であり、多くは2つのインターフェースしか備えていなかったためです。それはまた、非常に昔のブリッジテクノロジーと古いプロキシの上に構築された設計であり、人々は単純に2つのインターフェイスしか使用できなかったのです。これらの多くは古いIBMネットワークに組み込まれており、場合によっては、トークンリングまたはFDDIとイーサネット間のブリッジとして同時に使用されていました。それ以来、ファイアウォールは大きく進化しています。

これで、2つの物理イーサネットインターフェイスのみをサポートするハードウェアに制限されることを考えた場合、複数のセキュリティで保護されたゾーンを持つファイアウォールがどのように見えるかを理解しました(これはVLANの標準が存在する前であり、まだ前例のないものでした時間)あなたがクラスで見ているデザインを他の人が作った理由を理解するかもしれません。簡単に言うと、ハードウェアの制限を考えると、当時はこれが唯一の選択肢でした。注:これは、デザインがまだ使用されていないことを意味しているわけではありませんが、ほとんどの業界では、より多くの物理的および仮想インターフェイスを利用する、よりセグメント化されたデザインに移行しています。役立つかもしれない1つの追加の情報、冗長ペアアーキテクチャがある場合は、両方のファイアウォールを越えて、保護された各ゾーンに冗長インターフェイスを一致させる必要があります(2つのファイアウォールに4つのポートがあり、種類ごとに).

従来の設計では、DMZ=にサーバーがあります。これは、インターネット(外界)からの接続を受け入れるサーバーです。従来、LANは外界にパケットを送信し、それらへの応答を受け取ることができました。外部からのリクエストがLANに入るように開始することはできませんでしたが、その一部は、「ステートフル」パケットインスペクションと呼ばれるようになる前に存在していた設計の問題にも対処していました。

ステートフルファイアウォールとステートレスファイアウォールの簡単な説明:

ステートレス:基本的にのみブロックされますTCP ACK = 0パケットを含むパケット(これは通常のTCPシーケンスで送信される最初のパケットです。)元々この種類のファイアウォールの背後にあるサーバーは一連のパケットを組み立てることができず、タイムアウトになると接続を閉じるため、機能しました。

ステートフル:ステートフルを作成する必要があったのは、クラッシュするまでメモリをいっぱいにすることで、ステートレスファイアウォールの背後にあるシステムでサービス拒否攻撃を実行できることを学んだスマート攻撃者がいたためです。後で人々は、複数のパケットにまたがって攻撃を断片化する可能性があり、ファイアウォール検査ルールがトリガーされないことに気付きました。同様に、いわゆるシングルパケット攻撃による問題もありましたが、それはずっと後で発生しました。

ステートフルのコツは、ファイアウォールがより多くのRAMを持っている必要があることですが、十分にまとめられて(フラグメント化されたものをキャッチするために)分析され、単一のパケットも削除できるようになるまでパケットを保持できるようになりました。サーバーからの攻撃の問題基本的に、ファイアウォールはすべてを停止し、すべてのパケットの接続状態を収集して分析し、すべてのパケットを検査します。これにより、サーバーの保護が強化されます。

その後、アプリケーションプロキシ、Webアプリケーションファイアウォール、およびデータベースファイアウォールに取り組みました。

注:これまでに述べた以外にも、フラグメント攻撃には他の種類があります。これは、今述べたすべてのテクノロジーの非常に簡単な説明ですが、質問がより理解できるように、視点を十分に説明するのに十分です。

最後に、 CtrlDot について述べたように、答えの多くは特定のシナリオと使用法に依存します。これらは本当に高レベルの一般的な答えです。

0
Trey Blalock