OracleVM 3.3:xen (OVMSA-2015-0095)

high Nessus プラグイン ID 85037
New! プラグインの深刻度には CVSS v3 が適用されるようになりました。

プラグインの深刻度は、デフォルトで CVSS v3 を使って計算されるように更新されました。プラグインに CVSS v3 スコアがない場合には、CVSS v2 を使って深刻度が計算されます。深刻度の表示設定は、[設定]のドロップダウンで切り替えができます。

概要

リモート OracleVM ホストに 1 つ以上のセキュリティ更新が欠落しています。

説明

リモートの OracleVM システムに、重要なセキュリティ更新に対処するために必要なパッチがありません。

- ide:すべての予想されるアクセスの後に DRQ をクリアします。これは、end_transfer_func が DRQ のステータスビットをクリアできなかった場合の追加の強化です。PIO 転送が完了すると、ただちにこのビットを未設定にする必要があるため、すべてのコマンドでコードを複製するのではなく、中央の場所でこれを行ってください(さらに、他の場所では無視する)。

これは XSA-138 CVE-2015-5154(CVE-2015-5154)です

- ide/atapi:START STOP UNIT コマンドの終了を修正します。このコマンドはすべてのコードパスで終了する必要があります。pwrcnd セット付きの START STOP UNIT は、何もせずに成功するべきです。

これは XSA-138 CVE-2015-5154(CVE-2015-5154)です

- ide:io_buffer に書き込む前に配列境界をチェックしてください(CVE-2015-5154)。現在の PIO 転送のために十分なデータが読み取りまたは書き込みされているために、コマンドの end_transfer_func が呼び出されたのに、コマンドの完了関数を正しく呼び出しできない場合は、状態レジスタの DRQ ビットおよび s->end_transfer_func が設定されたままになる可能性があります。
これにより、ゲストが s->data_end を超えて s->io_buffer のバイトにさらにアクセスし、最終的に io_buffer をオーバーフローさせることが可能になります。現在これが発生している一例は、ATAPI コマンド START STOP UNIT のエミュレーションです。このパッチでは、end_transfer_func に依存せず、バッファへのアクセス前に明示的な配列バインドチェックを追加することで、適切に機能させて問題を修正しています。
Cc:

これは XSA-138(CVE-2015-5154)です

- ide:すべての予想されるアクセスの後に DRQ をクリアします。これは、end_transfer_func が DRQ のステータスビットをクリアできなかった場合の追加の強化です。PIO 転送が完了すると、ただちにこのビットを未設定にする必要があるため、すべてのコマンドでコードを複製するのではなく、中央の場所でこれを行ってください(さらに、他の場所では無視する)。

これは XSA-138(CVE-2015-5154)です

- ide:io_buffer に書き込む前に配列境界をチェックしてください。現在の PIO 転送のために十分なデータが読み取りまたは書き込みされているために、コマンドの end_transfer_func が呼び出されたのに、コマンドの完了関数を正しく呼び出しできない場合は、状態レジスタの DRQ ビットおよび s->end_transfer_func が設定されたままになる可能性があります。これにより、ゲストが s->data_end を超えて s->io_buffer のバイトにさらにアクセスし、最終的に io_buffer をオーバーフローさせることが可能になります。
現在これが発生している一例は、ATAPI コマンド START STOP UNIT のエミュレーションです。このパッチでは、end_transfer_func に依存せず、バッファへのアクセス前に明示的な配列バインドチェックを追加することで、適切に機能させて問題を修正しています。Cc:

これは XSA-138(CVE-2015-5154)です

- tools:libxl:qemu コマンドラインのグラフィックバックエンドを明示的に無効にしてください。デフォルトでは qemu は、SDL または VNC のいずれかのエミュレートされた VGA デバイスのためのある種のバックエンドを作成しようと試みます。しかしながら、ユーザーが sdl=0 と vnc=0 をそれらの構成で指定するとき、libxl はいずれかのバックエンドを明示的に無効にしないため、1 つが予期せず実行される可能性があります。しかし、sdl=1 と vnc=1 のいずれかが構成されている場合は、この変更の前後の両方で、明示的に有効化されているバックエンドのみが構成されます。つまりこの問題は、すべてのバックエンドが無効にされていると想定される場合のみ発生します。これは qemu-xen と qemu-xen-traditional にそれぞれ異なる影響を与えます。
qemu-xen が SDL サポートでコンパイルされた場合、$DISPLAY が有効なときは SDL ウィンドウが開かれ、そうでないときはゲストの開始に失敗します。
何らかのさらなる -sdl オプションの前に qemu に「-display none」を渡すことで、このデフォルトの動作が無効になり、

libxl 構成がそれを要求するときのみ、SDL が起動されることが保証されます。qemu-xen が SDL サポートなしでコンパイルされた場合、qemu により、VNC サーバーは、::1(IPv6 ローカルホスト)または利用可能な場合は IPv6 優先の 127.0.0.1(IPv4 ローカルホスト)でリッスンを開始します。この可能性をなくすために、vnc が libxl 構成で有効化されていないときに明示的に 「-vnc none」を渡します。qemu-xen-traditional は、求められないかぎり決してバックエンドで vnc を起動しません。しかしながら、デフォルトでは、SDL バックエンドを起動します。これを無効にする方法は、-vnc オプションを渡すことです。言い換えれば、「-vnc none」を渡すことで、デフォルトで vnc と sdl の両方が無効にされます。
その後 -sdl オプションを使用することで構成された場合は、sdl が再び有効化されます。qemu-xen と qemu-xen-traditional ビルドの両方を SDL サポート付きでテストしました。また xl cr # のデフォルトは xl cr sdl=0 vnc=0 xl cr sdl=1 vnc=0 xl cr sdl=0 vnc=1 xl cr sdl=0 vnc=0 vga='none' xl cr sdl=0 vnc=0 nographic=1 であり、$DISPLAY は有効と無効の両方です。これは XSA-119 / CVE-2015-2152 です。(CVE-2015-2152)

ソリューション

影響を受ける xen / xen-tools パッケージを更新してください。

関連情報

https://oss.oracle.com/pipermail/oraclevm-errata/2015-July/000343.html

プラグインの詳細

深刻度: High

ID: 85037

ファイル名: oraclevm_OVMSA-2015-0095.nasl

バージョン: 2.6

タイプ: local

公開日: 2015/7/28

更新日: 2021/1/4

依存関係: ssh_get_info.nasl

リスク情報

VPR

リスクファクター: Medium

スコア: 6.5

CVSS v2

リスクファクター: High

Base Score: 7.2

Temporal Score: 5.3

ベクトル: AV:L/AC:L/Au:N/C:C/I:C/A:C

現状ベクトル: E:U/RL:OF/RC:C

脆弱性情報

CPE: p-cpe:/a:oracle:vm:xen, p-cpe:/a:oracle:vm:xen-tools, cpe:/o:oracle:vm_server:3.3

必要な KB アイテム: Host/local_checks_enabled, Host/OracleVM/release, Host/OracleVM/rpm-list

エクスプロイトの容易さ: No known exploits are available

パッチ公開日: 2015/7/27

脆弱性公開日: 2015/3/18

参照情報

CVE: CVE-2015-2152, CVE-2015-5154

BID: 73068