"仮想化"タグ付きの投稿

仮想化システムは、多かれ少なかれ安全ですか?

2010年5月18日

私は上記の問題は、私がブログの記事のそれは価値があると感じたという十分な時間を求めていたしました。 数年前の答えは今日、"安全性の低い"だったかもしれないが、答えは"両方"です。 私は、クリスが不即不離というような音を知っているが、その答えは実際に最も正確に技術の現在の状態を説明していません。

仮想化は、すべてを変える

私は、仮想化は業界のインターネットは90年代にやったのと同じように影響をしようとしていることをいくつかの人々の発言を聞いたことがある。 正直に言うと、私はその意見にメリットがあると思います。 90年代初めにほとんどの人は、IPX、AppleTalkの、NetBUIとクローズドなネットワーク上で他のプロトコルの茄多を実行していた。 90年代の終わりまでに、ほとんどの人は全世界への接続と排他的IPを実行していました。 我々はビジネスだけでなく、我々は完全にその10年間に変更、セキュリティを適用する方法を行った方法。 1990年に端を切断されたネットワーク管理とセキュリティの両方のスキルは、1999年までにすべてが無意味だった。

仮想化は、業界でも同じ影響を与えるまで上昇し始めています。 仮想化の導入は、セキュリティを適用する方法の再考を完全にする必要があります。 戻る1990年代には、単にこれが自分のネットワークに影響を与えるという方法に関係なく、インターネットに接続されて管理者は、大きな時間を燃やしてしまった。 私たちは、人々が仮想化を採用するとしても同様の結果を参照する列を作っています。

仮想化は安全性の低い作るもの

仮想化のアキレス腱は、ソフトウェア自体にある。 我々は互いに離れるゲストシステムを維持するだけでなく、ホストおよび/またはハイパーバイザーへのソフトウェアを信頼することを願っています。 この期待を持つ二つの大きな問題があります。

  1. ないソフトウェアはバグフリーではありません
  2. ソフトウェアが不適切に設定できます。

数年前のコアの研究は、彼らが可能性が示されたゲストから抜け出し、ホストOSの完全なコントロールを得る 一方でハイパーバイザーの暴露のその種類を制限することになって、我々は確かにケースでも見たことがバイパスされているハイパーバイザーを 私たちも、ケースがソフトだった見たことになる仮想化環境で実行した場合にのみ攻撃可能 これらのリンクはここ数年の間に発見されている仮想化の問題の小さな断面を示す。 興味があれば、Googleでは、より多くの完全なリストを与えることができます。

だから慎重なセキュリティ専門家は、盲目的に安全になるようにソフトウェアを信頼するのは慎重になるだろう。 問題は、ベンダーは常にこれと同じアプローチを取らないです。 彼らとVMwareを取るESX(すぐにESXiのように)製品の例として。 VMwareの担当者はそれがあったことCanSecWestで発表したとき、私たちの多くは、あぜんとしたハイパーバイザーESXを攻撃することは理論的に不可能 我々は単に何かが壊れないと仮定すると、より創造的な人は、としている突き抜けする方法を考え出す

ESX / ESXiを持つ私の最大の懸念の一つは、VMware社が(を経由してモジュールであるためにそれを設計していることであるVMsafeを )。 プラス側では、これは外部のベンダーはハイパーバイザーの機能性とセキュリティを向上させるための製品を作成することができます。 下がり気味で、これは飛躍的にセキュリティが損なわれる可能性が導入されている不正なコードの可能性が高まります。

我々は、過去にこの偉大な例を見てきました。 マーカスRanumがその時点で利用可能な最も安全でキック尻のセキュリティデバイスの一つであるGauntletファイアウォールを、作成した。 三文字の機関が最善のセキュリティを望んでいたときに、彼らはガントレットになった。 マーカスは、すぐに機能の追加を開始ネットワークアソシエイツ(後にマカフィーになった)にガントレットを売却した。 前にそれは長くはなかった脆弱性の着実な文字列が発見されていた、これらの新たな"機能"で導入された各。 そこから、製品が紛失、そのセキュリティが、credとレーダーのオフ下落した。

今それは機能を追加し、物事を安全に保つために確かに可能です。 FreeBSDの人々はこれを正しく行う方法の優れた例です。 セキュリティを確保するために、彼らは維持する非常に厳格な監査プロセスを それは完璧です? 絶対に、彼らの監査プロセスでは、セキュアなソフトウェアの実装のためのバーを設定しているではない。 運が良ければVMware社は同様の尽くしますが、私はこれが事実であることについての話題を聞いたことがない。

ストレートユアヘッドの取得

[OK]を、私たちは盲目的にベイでの攻撃を保つために仮想化ソフトウェアを信頼することはできません。 しかし我々はまだ最悪の事態が発生しない場合の影響を最小限に抑えるための予防措置を取ることができます。 あなたが取ることができる最も大きなステップの一つは、慎重にサーバがホストされるか考慮することであり、そしてどのような他のゲストシステムは、同じボックス上で実行することが許可されています。 ネットワークの建築家によって使用されるセキュリティゾーンのコンセプトはここと同じように適用可能です。

セキュリティゾーンは、単にリスクの同じ相対的なレベルを共有するシステムの集合です。 直接攻撃から彼らのすべての共有同様のリスクがあるため例えば、ウェブ、名前とSMTPサーバは通常、すべて、DMZに配置されています。 ネットワークの内部部分に、デスクトップは、通常のサーバーよりも、異なるセキュリティゾーンに配置されます。 デスクトップは通常、直接通信が許可されている間、サーバーがインターネットへのアクセスなしに少しを持っているためです。 これにより、サーバよりも攻撃のリスクが高いデスクトップを配置します。

仮想化を実装するときに我々はこの同じロジックを適用することができます。 DMZのサーバと内部サーバは、同じハードウェア(CPUやディスクアレイの両方)上のゲストであってはならない。 そうすることで、攻撃者は、当社のネットワークへの代替ルートを作成する可能性があります。 むしろ任意のファイアウォールを通過しなくても、ワイヤ上で展開されているNIDS、NIPS、などのデバイスは、攻撃者は仮想化ソフトウェアを介して内部リソースにアクセスできる可能性があります。 それは簡単な攻撃なのでしょうか? ではない我々はこれまで見てきたものから。 機能的なエクスプロイトは、我々がする必要がない場合は、なぜ不必要なリスクをもたらす発見されている。

ところで、これらの同じセキュリティゾーンのルールは、仮想化されたネットワーク機器に適用する必要があります。 例えばそれは、VLAN DMZと内部ネットワークへの同じ物理スイッチを使うことは良い考えです。 私はそのように殺されるクライアントのカップルを見てきました。

何が仮想化をより安全に

幸いにも、セキュリティの観点から、仮想化はすべての悪いニュースではない。 実際、あなたは単にそれなしで行うことはできませんが、仮想化環境に適用できるいくつかのとてもクールなセキュリティプラクティスがあります。 これは、我々の中で仮想化を使用して開始した理由の一つであったハニー 2000年には早くも。

我々が今日直面する最大のセキュリティ上の問題の1つは、 カーネルレベルのルートキット 何がマルウェアのこの株は非常に狡猾させることは効果的に、オペレーティングシステム自体がマルウェアに変わります。 すべてのセキュリティチェックは、カーネルを通過しなければならないので、これは、検出が極めて困難になります。 カーネル自体が侵害された場合、我々は正確なセキュリティ情報を報告するためにカーネルに依存することはできません。 我々は、最大システムをシャットダウンすることなく終了し、上のドライブをマウントしてOSクリーンであることが知られて、そしてそこから私たちの法医学的検査を実行。 ああもちろん、このプロセスの問題点は、うまくスケールしないことです。 我々は数十または数百のサーバーがある場合は、単純にすべてを適切にそれらを確認する日に十分な時間がない。

前述したように、VMwareは現在、VMsafeのを経由してハイパーバイザAPIへのサードパーティベンダへのアクセスを許可している。 これはゲストOSのそれぞれに、メモリやネットワークトラフィックなどの特権状態情報へのアクセスを許可します。 ハイパーバイザーに差し込むことによって、いくつかの非常にクールなセキュリティオプションが可能となる。

例えばのは、ゲストOSは、カーネルレベルのルートキットによって攻撃されることを前提とします。 ゲストのメモリを分析することにより、ルートキットは、仮想オペレーティングシステムの外部から検出することができます。 ハイパーバイザーを介してチェックする場合は、ルートキットが検出されずステルス活動をすることができ、可能性のはるかに少ないがある。 前述したように、非仮想化システムとの同等のオプションはありません。

APIのプラグインはまた、暗号化トラフィックを扱うための新たな可能性を作成します。 暗号化をエンドツーエンドの(VPNのように)採用されているときに、アプリケーション層のネットワークベースのチェックは簡単にバイパスされます。 セキュリティは、復号化プロセスの後に実装できるように、唯一の現実的な選択肢は、エンドポイント上のエージェントソフトウェアを実行することでした。 もちろん、ここでの問題は、エージェントが攻撃された場合、全てのベットがオフになっていることです。 再び、ハイパーバイザーに差し込むことで我々はより安全に、このデータを精査するためにより良い立場にあります。

我々は、単に新しい参照し始めているVMsafeのAPIのプラグインを活用する製品を すべての製品は比較的新しいので、陪審は、彼らがいかに効果的にまだ出ています。 製品は、完全なポリシーエンフォースメントへのホストベースのファイアウォールとIDSの保護を置き換えるからGAMBITを実行します。 それは、この製品のニッチは、来年から揺れるかどうか興味がもたれるでしょう。

まとめ

私はこの記事の冒頭で述べたように、仮想化は、それを展開する方法に応じて、ご使用の環境のいずれか多かれ少なかれ安全性を確保する能力を持っています。 あなたは、単に単一のボックスですべての実行を開始した場合、あなたはおそらく殺されるとしている。 あなたが仮想化の領域だけでなく、活用してリリースされている新しいセキュリティ機能のいくつかをに長年にわたって開発されてきたベストプラクティスを拡張する場合、実際にはより全体的なセキュリティポスチャを作成することができます。