2013年9月23日月曜日

VMInjector の概要の訳

(元記事は:https://github.com/batistam/VMInjector )

概要:
------------
VMInjectorは、メモリを直接操作することで、VMware Workstationの/プレーヤー上で実行されている主要なオペレーティング·システムのOSログイン認証画面をバイパスするために設計されたツールです。

詳細:
------------
VMInjectorは、VMwareゲストのメモリを操作して、オペ​​レーティングシステムの認証画面をバイパスするための
ツールです。
VMwareは、RAMメモリを含め、ゲスト·オペレーティング·システムに割り当てられたリソースを処理します。VMInjectorは、VMWareのプロセスにDLLライブラリを注入し、マップされたリソースへのアクセスを獲得します。DLLライブラリは、VMwareのプロセスが所有してメモリ領域を解析し、ゲストのRAMイメージに対応する、メモリマップされたRAMファイルを配置することによって動作します。割り当てられたRAMファイルの操作と認証担当する関数をパッチすることで、攻撃者は基礎となる仮想ホストへの不正アクセスを獲得します。VMInjectorは現在、Windows、Ubuntu、Mac OS Xのオペレーションシステムのロックをバイパスすることができます。メモリ内のパッチは、非永続的で、ゲスト仮想マシンを再起動すると、通常のパスワード機能が復元されます。

攻撃シナリオ:
------------
VMInjectorは、仮想ホストのパスワードを忘れた場合や、リセットが必要なときに使用することができます。大抵、このツールが使用されるのは侵入テストの活動中で、VMwareのホストへのアクセスが達成されたときや、攻撃者がそのようなゲストが実行中のホストで追加のアクセス権を取得しようとしているときです。

必要になるもの:
------------
Windowsマシン(管理者アクセス権を持つ);
VMware Workstationまたはplayerエディション;
ロックされたゲストVM;

使用法:
------------
VMInjectorは2つの部分から成ります:
DLLインジェクションアプリケーション(Pythonスクリプトまたは変換された実行可能ファイルを提供)
DLLライブラリ(x86およびx64)

このツールは、両方のDLLを提供することで、x86とx64の両方のビットアーキテクチャをサポートしています。ホスト上で実行されているゲスト仮想マシンを選択するために、自身のDLLインジェクターを使用する場合もあります。
ツールを実行するためには、コマンドラインから与えられるVMInjector(32または64)実行ファイルを実行しますVMWareは各ゲストを別々のプロセスで実行します。VMInjectorは、バイパスが必要なゲストを実行しているプロセスを指定してやる必要があります。ユーザーがプロセスを選択したら、選ばれたターゲットにDLLを注入します。DLLが注入されると、ユーザはOSを指定して、メモリパッチが達成できるようにする必要があります

免責条項:
------------
このツールは合法的な目的のためだけのものです。コー​​ドはGPLv3ライセンスの下でリリースされます。

謝辞と参考文献:
------------
2006年の、ゲスト仮想マシンへのシェルコードを注入する上での貴重な研究に対してマイケルガーゼに感謝したいと思います。
また、Carsten Maartmann-MoeのInceptionでの仕事である、IEEE 1394 FireWireのトリックを使用してWindows、UbuntuとOS Xマシンのロックを解除するツールにも感謝したいと思います。これは、(現在は閉鎖された)winlockpwnツールで最初に紹介されました。

0 件のコメント:

コメントを投稿