セキュリティ系の勉強・その他開発メモとか雑談. Twitter, ブログカテゴリ一覧
本ブログはあくまでセキュリティに関する情報共有の一環として作成したものであり,公開されているシステム等に許可なく実行するなど、違法な行為を助長するものではありません.

仮想マシン(Windows)をカーネルデバッグ -Virtual Box

//

VirtualBox

[設定]→[シリアルポート]から以下のように入力
f:id:thinline196:20180816202057p:plain

仮想マシン

[Power Shellを管理者権限で実行]
以下のコマンドを入力

> bcdedit /debug on
> bcdedit /dbgsettings serial debugport:1 baudrate:115200 

ここで仮想マシンはパワーオフして、もう一度立ち上げ直す。

Windbg

[File]->[kernel debug]より以下のように入力
f:id:thinline196:20180816205528p:plain

¥¥.¥pipe¥com1,pipe

起動

先にWindbgカーネルデバッグを始めると怒られるので、仮想マシンを立ち上げている間に、カーネルデバッグを始めるといい感じに起動します。waiting to reconnect...があまりに長い場合は立ち上げ直してます。

失敗する

名前付きパイプを生成できませんでした。
failed to create named pipe

こんな感じでエラーがてしまったのですが、VirtualBox側の設定に問題。と言いますか、入力したパイプの名前がよくなかったっぽい。おそらくTeamViewerを使用して、日本語キーボードPCに対してUS配列キーボードを使用したせいか、バックスラッシュの入力がうまくできていなかった。

パイプは以下の文字列で始まる必要があるらしく、このバックスラッシュがうまく入力できていないせいで、生成ができていなかったと予想しました。なので、ウェブからバックスラッシュだけコピーしてきて、入力&再トライしたところ、無事接続に成功しました。

\\.\pipe\<pipe_name>