web-dev-qa-db-ja.com

データベースサーバーがDMZに常駐してはならないことを専門家にどのように説明しますか?

私たちのセキュリティ専門家、データベース管理者、ネットワークチーム、インフラストラクチャチームは、データベースサーバーを [〜#〜] dmz [〜#〜] に配置し、HTTPサーバーと中央に配置しても問題ないと言っています-wareサーバー。

彼らの理由:

データベースサーバーが危険にさらされている場合(安全でない中間層のため)、少なくともデータベースサーバーは内部システムの外部にあります。ネットワーク内にある場合、ハッカーはデータベースサーバーを使用して他のシステムにアクセスできます。

彼らが言っていることは:

  1. ミドルウェアサーバーを2番目のファイアウォールの背後に配置し、データベースサーバーを3番目のファイアウォールの背後に配置しないでください。
  2. ハッカーがデータベースの機密データを取得したい場合に備えて、ファイアウォール(HTTPサーバー)を1つだけ使用します。少なくとも、取得できるのはそれだけです。

2番目のステートメントは実際に言われました...逐語的。

このデータベースサーバーは、銀行の詳細などの機密情報を保持することに注意してください。

さて、これらの専門家はあなたに意味をなしていますか?私はソフトウェア開発者ですが、そのロジックを理解できません。 「宝石箱を家の外に置いて、強盗がテレビに邪魔しないように?」のようなものです。

61
bruce bana

SANSの「データベースを安全にネットワーク化する」( http://www.sans.org/reading-room/whitepapers/application/making-network-safe-databases-24 )は、日付が少し読みますいくつかのセクションでは、あなたがしている方向にまともな「ダミー」レベルのガイダンスを提供します。

また、US NISTのリソースセンター( http://csrc.nist.gov/ )を突っ込んで疲れる可能性もあります。 ISOのISO/IEC 27033-2:2012も話題になると思いますが、確実なコピーは手元にありません。

最も機密性の高いサーバー(データベースサーバー)を、最も危険にさらされている(したがって脆弱な)サーバーから分離または分離しようとしています。

あなたは、a)可能な限り攻撃を防ぎ、b)進まない(そして重要なものへのアクセスを)遅らせようとする「多層防御」アプローチを提案しています。

理想的には、すべてが常に強化され、パッチが適用され、サーバーは必要なポートでのみトラフィックをリッスンし、許可されたデバイスからのみリッスンし、「処理中」のすべてのトラフィックは無許可のリスナーにアクセスできず(暗号化や分離を介して)、すべての侵入が監視されますと整合性。

すべてが100%の確実性で整っている場合、すばらしいです。あなたの「反対」は、上記の(a == --- ==)に可能な限り対処しました。すばらしいスタートですが、ポイントb)はどうですか?

IfWebサーバーが危険にさらされた場合、提案されたアーキテクチャははるかに優れています。彼らの潜在的な攻撃の足跡とベクトルは、必要以上に大きくなっています。

データベースをWebサーバーから分離することの正当化は、WebサーバーをLANから分離するために受け入れた正当化と同じです。さらに率直に言うと、侵害されたWebサーバーが同じセキュリティゾーン内の他のシステムに危険をもたらさないと確信しているのに、なぜDMZが必要であると思いますか?

あなたの状況にいるのはひどくイライラします。少なくとも、あなたの立場で、私はあなたの懸念と提案を概説するリスクメモを作成し、彼らがそれを確実に認めるようにします。 CYA、とにかく。

30
DerekM

「宝石箱を家の外に置いて、強盗がテレビに邪魔しないように?」のようなものです。

はい、その通りです。

相対的に言えば、データベースの値を気にしない場合は、それを外部に残すことが理にかなっていることを確認してください。アプリケーションが恐ろしいほど安全でないことが前提であるが、何らかの理由でとにかくそれを置く必要がある場合。それを保護したくない場合、これはこの恐ろしい安全でないシステムを他のすべての内部システムから分離する方法として理にかなっています。

一方、データベースサーバーの完全なテイクオーバーを可能にする安全でないアプリケーションがSUCHにあることを期待する言い訳は実際にはありません。また、「分離」の代わりに「露出」を使用する本当の理由はありません-それを正しく行う簡単な解決策もあります。

これは、次の2つの状況のうちの1つであると思われます。

  1. これらのいわゆる「専門家」は本当に無知です。
  2. ここでトレードオフされている他のビジネス要件があります。

あなたのアナロジーは完璧に機能すると思います。次に、「実際には、これらのジュエリーは偽物であり、TVは実際には金の縁を備えた60インチの5Kカスタムジョブである」と同等と言われる場合、それは賢明なトレードオフである可能性があります(ただし、正しく実行することをお勧めします)。 )。
そうでなければ、彼らは知識の欠如から働いているので、それを説明する方法がない可能性があります。

38
AviD

データベースがカードの詳細を保持している場合、PCI DSS適切な保護に関する要件を満たしていないことは非常に簡単に主張できます。

また、単一障害点の健全性チェックに失敗し、コア資産を保護します。

データが数十億の価値がある場合、保護の層を追加するために数千を費やさないのはなぜですか?業界の良い習慣は、セキュリティゾーンを階層化することです。

PCI、ISFのグッドプラクティスガイド、およびその他の多くのドキュメントを参照してください。

15
Rory Alsop

データベースサーバーがWebサーバーと同じセキュリティゾーンにあることから、一部の内部システムと同じセキュリティゾーンにあることを示唆している場合、セキュリティを低下させていると合理的に結論付けることができます。

現状では、Webサーバーとデータベースサーバーの両方がDMZにあり、DMZから内部ネットワークへの接続が許可されていない場合、データベースサーバーをDMZから内部ネットワークに移動すると、 DMZから内部ネットワークへの接続を許可する必要があります。つまり、データベースの保護を大幅に向上させることなく、内部ネットワークのセキュリティを低下させることになります。

データベースが内部ネットワークよりも敏感であると本当に確信している場合(これは本当かもしれません)、内部ネットワークを侵害してデータベースに直接アクセスすることは望ましくありません。

つまり、データベースサーバーをあるセキュリティゾーンから別のセキュリティゾーンに移動するのではなく、完全に新しいセキュリティゾーンを作成するということです。実際にそれを実行するには、追加のファイアウォールを購入し、DMZと追加の安全なネットワークの間に配置する必要があります。

次に、この追加のファイアウォールを購入して維持するコストを、それが提供する追加のセキュリティに照らして評価することになります。

9
kasperd

AvIDはすでに主要な質問をカバーしていますが、少し異なる角度からこれを行うと、ほとんどのファイアウォールは複数のインターフェースをサポートし、インターフェース間のトラフィックの制御を提供できます。

ソリューションの各側面(フロントエンド、ミドルウェア、バックエンド)をホストするように複数のインターフェースを構成すると、複数の物理ファイアウォールを必要とせずに、データベースがWebサーバーから危険にさらされるリスクが軽減されます(他のチームが心配している場合)。 ...それはコストの問題ですか?)そして内部ネットワークへのルートを導入することなく。

これがあなたに、いくつかの分離を実装するための議論をサポートするための実用的な「レバー」を与えるかどうか疑問に思っています。

同じネットワークセグメント上にある他のサーバー(データベースを含む)がさらに侵害され、レイヤードされたDMZがどのように機能するかという、歴史的なWebサーバーの脆弱性に基づくwhat-ifシナリオは失敗する将来の妥協を防止します。おそらく金銭的なコストがあるため、コスト/労力のメリットを説明するのは「簡単」でしょうか?

5
R15

あなたが彼らにそれを行うよう説得しようとしていると仮定すると、(必ずしも)彼らにそれが正しいと納得させるのではありません:

大規模な顧客や見込み客がセキュリティ監査を行うようになると、失敗することを説明してください。

障害がビジネスである場合、それだけで十分であり、必要なだけの理由になります。

4
Ben

良い議論の1つは、Webサーバーとデータベースサーバーを別々のDMZに分離するための基準が実際にはそれほど高くないということです。

実際のルーター/ファイアウォールを使用し、Webサーバーとデータベースサーバーを別々のVLANに配置します。どちらも内部のセキュアLANの外側にあり、ファイアウォールルールにより、インターネットからWebサーバーへの最低限必要なポートへのアクセスを制御します。サーバーからデータベースサーバーへのアクセス、およびWebサーバーからセキュアLANへのアクセスはまったくありません。

ファイアウォールはまた、インターネットからデータベースサーバーへの直接アクセスをまったく防ぎ、データベースサーバーから安全なLANへのアクセス(認証目的など)を厳密に制御します。

これにより、攻撃者はデータベースサーバーを含むネットワークに直接アクセスすることもできません。

Webサーバーのいずれかで攻撃を受けた場合でも、データベースサーバーを攻撃するための無制限のアクセス権を持つ同じネットワーク上にいません。また、何らかの種類のログ監視を実施している場合は、攻撃者が他の何かを攻撃するために多くの時間を費やす前に、Webサーバーの侵害。

その後、Webサーバーがデータベースとの通信に使用する1つの開いているポートを経由して、しばらくしてデータベースサーバーに侵入できたとしても、その時間を無駄に費やしていたことはほとんどありません。安全なLANにアクセスするためにそのすべての時間を費やすのではなく、攻撃を認識します。

Webサーバーが存在するDMZ=からLANに到達することさえできないため、LANへの唯一のルートは、何らかの形でデータベースサーバーにホップし、他のサーバーで保護されていることです。 DMZ。おそらく、データベースサーバーが何らかのエンタープライズ認証システム(Active Directoryなど)に関連付けられている、または関連付けられる可能性があります。その機能をパブリックWebサーバーと同じDMZで使用しますか? ?

ゲストとDMZサブネットを私のhomeに作成するためのセキュリティ問題について十分に心配することができる場合は、「モノ」(「モノのインターネット」)を配置する場所を設ける)LANに直接接続しなくても、数十億に相当する懸念があるため、重要なWebサーバーとデータベースサーバーで同じことを実行するためのマインドシェアと時間を確実に確保できます。オフィスでは、いくつかのスタックを組み合わせてこれを行っています。 1000ドルのProcurve管理L2/L3スイッチ、SonicWall UTMおよびUbiquiti EdgeMaxルーターhomeに、$ 100のUbiquiti EdgeRouter Lite、$ 100の管理された8ポートHPスイッチ、および1つのUbiquiti Unifi APがあります。これは複数のVLANをサポートしており、私のセットアップは私たちが話していることを完全に実行できます。

そして、ネットワークに接続されたDVR、プリンター、BluRayプレーヤー、サーモスタットなど、発見されていないエクスプロイトを誰が知っているか、どのバグのある古いファームウェアが実行されているかを心配することなく、安心できます。ハッキングされ、ネットワークを介して自分のコンピューターや個人ファイルにアクセスする。

セキュリティの専門家がこの種のものを構成することはそれほど難しくなく、ファイアウォールごとに個別の物理ハードウェアを使用する必要はありません。最近、SDN(ソフトウェア定義ネットワーキング)が大流行しています。

100ドルのEdgeRouter Liteでも、ルーターを介して約1 Gbpsを転送でき、複数の仮想インターフェイスとそれらすべてのインターフェイス間のファイアウォールルールをサポートしています。

1つの小さな箱は、実際にはファイアウォールでいっぱいのバスケット全体です。

したがって、ハイエンドのルーターに実際のお金を費やせば、より優れたルーティングパフォーマンスでこれらすべての機能といくつかの機能を利用できます。

Ubiquiti EdgeRouter Pro 8のようなものでさえ、わずか$ 375で毎秒200万パケットを提供し、8つの物理インターフェイスと、必要に応じてそれぞれにVLANサブインターフェイスを提供します。より高いパフォーマンスが必要な場合より大きなハードウェアについては、Brocade(Vyatta)、Cisco、Juniperなど、またはDell/SonicwallのSuperMassiveシリーズのようなものを探してください。あるいは、Vyatta仮想ルーターをビーフィーマルチコアXeonサーバーで実行してください。

私はルーターを売るつもりはありません。ただ、ここにあるべきセキュリティの分離を実現するために、実際にはバーがそれほど高くないことを指摘します。

2
Craig

@クレイグ...良い実用的な賢明な答え。 bruce_banaが言ったので、@ DerekM回答(これも良い)を使用してセキュリティの専門家を説得した後、これを実装することは現実的であるべきです。 @DTK ...良いビジネスCYAの答え。これは、私がbruce_banaだったら間違いなく実装します。 @bruce bana ...このリンクをこのサイトから比較/関連する問題/解決策として試してください... データベースサーバーを安全なネットワークトポロジに配置するためのベストプラクティスは何ですか

1
Procommtech8128

会社に代わってそのリスクを受け入れる権限がないことを直属の上司に伝えてください。データベース内のデータの価値は$ xxxであり、そのリスク受け入れのレベルはそうすることを許可された誰かからのものでなければならないことを指摘し、経営幹部のメンバーにリスク受け入れの承認を得るよう擁護するよう彼に依頼してください。

データの価値を見積もるには、それがPCIに関連付けられたデータであるかどうかを判断しますDSS(そうである場合、ターゲット/ホームデポが販売、クレジットの損失で被った顧客あたりのコストを見てください監視、詐欺)、またはそれがPIIである場合(そうである場合、医療システムが信頼性の喪失、個人情報の盗難の監視、評判の喪失で被った患者ごとの経済的損害を見てください)、またはそれがあなたの会社の競争力のあるエッジ(貿易秘密、まだリリースされていない財務、知的財産)などの場合、データの価値は企業の現在の評価になる可能性があります。

会社に代わってリスクを受け入れるように直接命令された場合、会社の役員の資格で行動を始めるよう求められることがあります。そのため、あなたはそれを指摘する義務(おそらく法的義務)を持っています。あなたは1人として実行するように依頼された任命されていない人物であり、これを会社の取締役会に管理チェーンに説明する必要があります。重要なブローバックに備え、これを知らせるために重要な政治的資本を費やす準備をしてください。

幸運を!

0
DTK