Qubesオペレーティングシステムに脆弱性があることが発表されました。Qubesはハイパーバイザを使用してアプリケーションとOSコンポーネントを厳密に分離しています(アプリケーションとシステムサービスの各クラスは別々の仮想マシンで実行されます)。攻撃者が仮想マシンのいずれかを侵害した場合、この脆弱性により分離を回避し、ホスト環境(Dom0)上で任意のコマンドを実行して、オペレーティングシステム全体を制御できるようになります。この問題は、ユーザーが「qvm-copy-to-vm」ユーティリティを使用してホスト環境から攻撃者が制御する仮想マシンにファイルをコピーする際に発生します。この脆弱性は、qubes-core-dom0-linuxパッケージのアップデート4.3.22で修正されています。
問題は qvm-copy-to-vm ユーティリティに存在し、アクセス時に返されるエラーの不適切な処理が原因です。 仮想マシンこの脆弱性は、qvm-copy-to-vmユーティリティがエラー情報を表示するためにkdialogまたはzenityプログラムを起動し、system()関数を使用して、コピーに失敗したファイルに関する情報をコマンドラインオプションの1つとして置き換えていたことに起因していました。ファイル名のサニタイズは、非ASCII文字と二重引用符を削除するだけで、シェルによって解釈される特殊文字(「`」や「$」など)のチェックは行われていませんでした。
ホストシステムからのファイルコピーが完了すると、仮想マシンハンドラは操作の確認応答を返します。この応答には、最後に受信したファイル名などが含まれます。攻撃は、確認応答の代わりにエラーコードを返し、コピーに失敗したファイルに対してコマンドインタープリタで処理される特殊文字を含むファイル名を指定することから始まります。エラーを受信すると、ホストハンドラは system() コマンドを使用してエラーテキストを含むダイアログボックスを起動し、攻撃者が返したファイル名をコマンドラインに渡します(たとえば、「file`id`」を指定すると、ホスト上で id コマンドが実行されます)。
出所: オープンネット.ru
