🦔

EVE-NGにWiresharkをいれた後の備忘録

2020/12/31に公開

ネットワークの検証用にESXi上でEVE-NGをたててよく検証をしています。
その中で一番苦労した Wireshark を使用できるようにしたあれこれを自分の備忘録として残しておこうと思います。

※EVE-NG自体のインストールについては記事にする予定はないです...

Wiresharkをインストール

EVE-NG download画面

この画面の Windows integration pack からインストーラーを取得できるので、そのインストーラを実行して wireshark をインストールします。他にもputtyとか色々ダウンロードされますがここでは気にしない。

Wiresharkを起動することができるか

適当な構成を作ってwiresharkを起動してみましょう。
ノードを右クリックして、captureを開いて、パケットをキャプチャしたいインターフェースを指定し、押下します。

ここで、もしEVE-NGのログインパスワードなどを変更している場合は問題が起きます。
eve-ngはEVE-NGフォルダの配下にあるwireshark_wrapper.batファイルを使用して起動しているようです。

そのファイルの中身を開いてみると以下のようになっています。

〇wireshark_wrapper.bat

@ECHO OFF
SET USERNAME="root"
SET PASSWORD="eve"

SET S=%1
SET S=%S:capture://=%
FOR /f "tokens=1,2 delims=/ " %%a IN ("%S%") DO SET HOST=%%a&SET INT=%%b
IF "%INT%" == "pnet0" SET FILTER=" not port 22"

ECHO "Connecting to %USERNAME%@%HOST%..."

"C:\Program Files\EVE-NG\plink.exe" -ssh -batch -pw %PASSWORD% %USERNAME%@%HOST% "tcpdump -U -i %INT% -s 0 -w -%FILTER%" | "C:\Users\admin\Desktop\eWire\Wireshark\Wireshark.exe" -k -i -

ここの2行目と3行目にしているuser/passになっていないとまず起動できません。
なので、起動時のプロンプト画面でAccess Deniedになっている場合はwireshark_wrapper.batファイルを編集しましょう。

起動はするが、接続が切れる場合

Access Deniedが突破できると次の問題です。
Wiresharkのアプリケーション自体は起動するのですが以下のようなメッセージが出力される場合があります。

"Connecting to "root"@192.168.0.11..."   
The server's host key is not cached in the registry. 
You have no guarantee that the server is the computer you think it is. The server's ssh-ed25519 key fingerprint is: ssh-ed25519 255 98:a6:a5:ea:39:c6:ed:3d:1f:a9:27:dd:1c:64:f5:e7
Connection abandoned.

サーバのホスト鍵ーがレジストリの中にキャッシュされてないので、SSH接続を切りますよということなので、この問題を解決しましょう。

ここからは私もあまり詳しくはよくわかってません。

調べたところ、wiresharkをwindows client install packでインストールする際に一緒にplink.exeという実行ファイルがインストールされているようです。 plink.exe自体はPuTTYのコマンドラインツールのようです。ただ、EVE-NGでwiresharkを起動して、tcpdumpを実行する際に、このplink.exeを使用してSSHアクセスしているようなのです。

実際にeve-ngのダウンロード画面にて、インストーラのパッケージ中の内容書きにplink.exe(for wireshark)というかっこ書きがされています。なのでまず、wiresharkを起動する端末から、eve-ng自体に、plink.exe経由でSSH接続し、SSH鍵をキャッシュしてもらいます。

こんな感じです。

これでWiresharkを起動すると...

ちゃんとSSH接続して、tcpdumpも動いてますね。
これでWiresharkでもパケットキャプチャできていることでしょう。

...端末を変えたらキャプチャできなくてなぜ!?って慌てた年末でした。
来年はアウトプットをより増やしていこうと思うのでよろしくお願いします。
皆さまよいお年を。

Discussion