wiresharkがMac OSX環境でluaスクリプトを正しく処理するように設定する必要がある初期設定はありますか?Wireshark LuaディシジョンスクリプトをMac OSXに移植する方法は?
「パケットのHTTPヘッダー長を調べる方法」の質問にLuaの回答を移植しようとしました。 https://stackoverflow.com/a/5794357/1217670
Macで動作するソリューションを取得できませんでした。
解決策は、Wireshark 1.6.7、Lua 5.1のWindows XPプラットフォームで正常に動作しました。
Wireshark 1.6.5、Lua 5.1を使用してMac OSX 10.7.3上でhttp_extra.luaスクリプトを実行します。 [Header Length(bytes):917]ヘッダーフィールドは表示されません。
カスタムHTTPヘッダーフィールドにhttp.hdr_lenを入力しました。
http.hdr_lenでフィルタリングすると、何も表示されません。
http_extra.luaスクリプトは、 /Applications/Wireshark.app/Contents/Resources/lib/wireshark/pluginsディレクトリに配置されています。
スクリプトをPersonal Plugins Folderに移動した場合と同じ結果になります。
これは、Windows XPシステムで完全に動作するスクリプトファイルです。
About Wireshark Pluginsタブには、http_extra.luaがタイプluaスクリプトとしてリストされています。
スクリプトをテストしてエラーを作成すると、wiresharkがスクリプトを認識していることが検証されます。
LUA_PATHをグローバルプラグインディレクトリに設定する必要があります。これは効果がありませんでした。
ご意見をお寄せください。
私はこの同じ結果を試しました。私が気づいたことの1つは、wiresharkフィルタ式ボックスのフィールド名は次のとおりです。http.header.http.hdr_len - http.hdr_len(ヘッダー長(バイト))? ?これは間違っています?構成を再チェックする必要があります。 – phil
ディスプレイフィルタのテキストボックスが赤色(緑色ではなく)で表示されている場合は、無効なフィールドを含む構文エラーがあることを意味します。プラグインが実際にロードされていることを確認してください:print文をLuaファイルの先頭に置き、コマンドラインからWiresharkを再起動して、プリントアウトを確認してください。 –
これにより、フィルター式が誤って作成されました。 「カスタムHTTPヘッダーフィールドにhttp.hdr_lenを入力しました。」カスタムhttpフィールドのエントリを削除し、不正な値が消えました。ディセクターはこのフィールドヘッダーを設定します。 – phil