最近 ロシアの研究者がVirtualBoxのゼロデイ脆弱性の詳細を発表しました これにより、攻撃者は仮想マシンを終了して、ホストオペレーティングシステムで悪意のあるコードを実行できます。
ロシアの研究者SergeyZelenyukは、VirtualBoxのバージョン5.2.20に直接影響するゼロ日の脆弱性を発見しました、および以前のバージョン。
この脆弱性が検出されました 攻撃者が仮想マシンから脱出できるようになります (ゲストオペレーティングシステム) リング3に移動します。これにより、既存の手法を利用して特権をエスカレーションし、ホストオペレーティングシステム(カーネルまたはリング0)に到達できます。
開示の最初の詳細によると、問題は、サポートされているすべてのオペレーティングシステムで利用可能な仮想化ソフトウェアの共有コードベースに存在します。
VirtualBoxで検出されたゼロデイ脆弱性について
GitHubにアップロードされたテキストファイルによると、サンクトペテルブルクを拠点とする研究者セルゲイ・ゼレニュク、 悪意のあるコードがVirtualBox仮想マシンから脱出する可能性のある一連のエラーが発生しました (ゲストオペレーティングシステム)であり、基盤となるオペレーティングシステム(ホスト)で実行されます。
VirtualBox VMの外部に入ると、悪意のあるコードはオペレーティングシステムの限られたユーザースペースで実行されます。
「このエクスプロイトは100%信頼できる」とゼレニュク氏は語った。 「それは、バイナリの不一致や、私が考慮しなかった他のより微妙な理由のために、常にまたは決して機能しないことを意味します。」
ロシアの研究者 ゼロデイはVirtualBoxの現在のすべてのバージョンに影響し、ホストまたはゲストOSに関係なく機能すると言います ユーザーが実行中であり、新しく作成された仮想マシンのデフォルト設定に対して信頼されていること。
Sergey Zelenyukは、バグバウンティプログラムと現在の脆弱性「マーケティング」に対するOracleの対応にまったく同意せずに、Ubuntu仮想マシンに対する0日間のアクションを示すPoCのビデオも投稿しました。同じくUbuntuのホストOS上のVirtualBox内で実行されます。
Zelenyukは、バグを悪用する方法の詳細を示しています 構成された仮想マシン上 「IntelPRO / 1000 MTデスクトップ(82540EM)」ネットワークアダプター付き NATモードで。 これは、すべてのゲストシステムが外部ネットワークにアクセスするためのデフォルト設定です。
脆弱性のしくみ
Zelenyukによって作成されたテクニカルガイドによると、 ネットワークアダプタは脆弱であり、root権限/管理者を持つ攻撃者がホストリング3に逃げることができます。 次に、既存の手法を使用して、攻撃者は/ dev / vboxdrvを介してリング特権をエスカレーションできます。
「[IntelPRO / 1000 MTデスクトップ(82540EM)]には、ゲストの管理者/ルート権限を持つ攻撃者がホストring3に逃げることができる脆弱性があります。 その後、攻撃者は既存の手法を使用して、/ dev / vboxdrvを介して0を呼び出す特権を増やすことができます」とZelenyukは火曜日のホワイトペーパーで説明しています。
ゼレニュク 脆弱性がどのように機能するかを理解する上で重要な側面は、データ記述子の前にハンドルが処理されることを理解することです。
研究者は、セキュリティ上の欠陥の背後にあるメカニズムを詳細に説明し、仮想オペレーティングシステムの制限を回避するために悪用される可能性のあるバッファオーバーフローを取得するために必要な条件をトリガーする方法を示します。
まず、パケット記述子(ネットワークアダプタがシステムメモリ内のネットワークパケットデータをトレースできるようにするデータセグメント)を使用して、整数のアンダーフロー状態が発生しました。
この状態は、ゲストオペレーティングシステムからヒープバッファにデータを読み取り、オーバーフロー状態を引き起こして関数ポインタが上書きされる可能性があるために悪用されました。 またはスタックオーバーフロー状態を引き起こします。
専門家は、ユーザーが仮想マシンのネットワークカードをAMD PCnetまたは準仮想化ネットワークアダプターに変更するか、NATの使用を回避することにより、問題を軽減することを提案しています。
「パッチが適用されたVirtualBoxビルドがリリースされるまで、仮想マシンのネットワークカードをPCnet(いずれかXNUMXつ)または準仮想化ネットワークに変更できます。
私の脳にはあまりにも高度で技術的です...私はそれが使用する用語のXNUMX分のXNUMXをほとんど理解していません。
さて、主な問題は、Linuxを使用する多くの人がVirtualBoxを使用してWindowsを使用していることです。また、Windows 7には、専門家が配置するようにアドバイスするカード用のドライバーがないことが判明しました。さらに悪いことに、PCnetドライバーをオンラインで探すと、 virustotalまたは29のウイルス陽性を取得した他の方法で分析すると、誰かがどのようにインストールするかがわかります。