from electron 2 web

インターネットのリソースを無駄遣いして検索におけるUXを下げてごめんなさい

圧倒的文章力のNASAでゴミみたいなチラ裏のようなメモを量産してしまい全ての"Web開発者"にごめんなさい

wiresharkを無心で眺める

先週ぐらいに図書館に行って「バイナリの歩き方」や「CTFチャレンジブック」などの本を読んだ。 そのうちまとめるつもり。

んで今日授業が暇だったので久しぶりにwiresharkを起動して眺めてた。

SSDP

UPnPの一部。そもそもUPnPすらあやしい。

SSDPリフレクション攻撃なんてのもあるっぽい。

udp

UPnP

UPnPは1999年にMicrosoft社が発表したもので、同社も参加する業界団体UPnP Forumが標準仕様を策定している。

こマ

d.hatena.ne.jp

UPnPはいろんなプロトコルからできてる。

Universal Plug and Play - Wikipedia

やWN1。デバイスが持ってるXMLの機能一覧みたい。。。みたくない。。。?

はえ~やっぱりautoIPつかうんすねえ~。

LLMNR使って、どうぞ。

ネットワークに参加した時に通知したり、任意の時に探索(M-serch)出来る。

UPnPのディスクリプション気になる

 ディスクリプション機能は、ディスカバリによって検出したデバイスから、詳細な情報を取得 する機能です。
 デバイスは、その機器毎にデバイス情報(装置名称、種類や、サービスの一覧)や、UPnPを介して制御が出来るサービスのアクション(詳細はコントロー ル機能にて説明します)一覧をXMLドキュメント(ディスクリプションドキュメント)として保持しています。
 ここで、デバイス情報や、デバイス情報を示すドキュメントを「デバイスディスクリプションドキュメント」、サー ビスのアクション一覧を「サービスディスクリプションドキュメント」と呼びます。
 コントロールポイントは、ディスカバリ機能によって検出したデバイスに対して、このXMLドキュメントを取得することにより、自分が制御できるアクショ ンの一覧を知ることが出来ます。

 UPnPネットワーク上では、機器がUPnPネットワーク上に接続した場合にディスカバリ機能によって検出が行われ、ディスクリプション機能によってコ ントロールポイントが実行できる制御情報を知ることが出来、常にこれらの2機能が動作しています。

IGMP

internet_group_management_protocol

マルチキャストの設定をするプロトコルみたいな。

Internet Group Management Protocol - Wikipedia

マルチキャストに関する通信を実現するにはアドレッシング、IGMP、マルチキャストルーティングプロトコルに関する知識が必要です。

マルチキャストグループを管理するのはルーター

へえ。

www.infraexpert.com

へぇ*2。

LLMNR

結構な量のLLMNRが流れてきた。

link local multicast name resolution.

名前から分かる通り名前解決をするプロトコル

AD上は必ずDNSが存在するはずなのでその場合LLMNRは行われない

サーバーを使わない。

arpとの違いがわからん。。。v6はarp使えないからその代用みたいな?

windows vista以降ではブロードキャストではなくLLMNRを使う。


statistics

summary

wiresharkのバージョンやOSのバージョン、ファイル名、コメントなど環境的な情報が表示される。

どのドライバーが情報をとってるかとかも

protocol hierarchy

パケットのリストのプロトコルの統計が表示される。

全体の量に対してプロトコルの割合がパーセンテージで出てくるから例えばイーサネットとかはほぼ100%

io graph

時間軸でio inputをグラフする。 したのinputに条件式を入れて(tcpとか)フィルターしたり、フィルターして作ったグラフと比べたりすることが出来る。

flow graph

各ノード間の送信履歴、受信履歴が見れる。3way handshakeとかが時間軸順に表示されるのでわかりやすい。

ラダー図っぽい。おもしろい。

convasation

flog graphと似てる。さっきのは時間軸順だったがこっちは各ノード間の通信が一つのレコードに表示されてる。 表形式になっててBPS,バイト数、なども見れる。

tcp基準の各ノード間の通信、ip基準の、などもできる。

PS2

パケット一覧の色

色の理由はパケットをクリックして開いた詳細ウインドウのflameの[coloring rule string]に書いてある。

[]でくくられているのでもちろんwiresharkが自動生成したやつね。

たまにtcpでも色の違うのがあって気になってた。

troushoo.blog.fc2.com

プロファイル

一般的なデータを保存するgeneral profileとユーザープロファイルがある。

general ⊇ ユーザープロファイル

endpointとconversation

エンドポイントは端末のパケット量基準

conversationは端末同士の基準、なのでエンドポイントよりconversationのほうがレコードが多い。

e.g. エンドポイント4つなら、12個?

ここから↓3つはめっちゃ使えそう。

wlan trafic

udp malticast stream

マルチキャストをみる。学校でワイヤーシャーク開いた時使えそう

compare

2つのwiresharkファイルをcompare。鯖とクライアントで同時にとって比較したり。

ONC-RPC,ANCP,BACNET

リモートプロシージャコールの通信、ブロードバンドルーターの設定?の通信、ビルのネットワーク管理用の通信

をそれぞれ分析。

geoip

たまにwiresharkdestination ipの物理的な場所を取ってきてくれることがあるらしい。

コメント

ファイル全体のコメントとパケットごとのコメントが有る。

舌のステータスバーとかメニューのコメントサマリーは全体のコメント、パケット右クリックはパケットごと。

BROWSER

たまに出てくる。ブラウザプロトコル

PS

ついにUPnPxmlが見れた。

2日連続でワイヤーシャーク見てたら取れた。

プロトコルはhttp/xmlだった。

GARAさんのページ(UPnPとポートマッピング)

m-serchした後は最初にhttpのgetを投げるのか。

 2)TCPソケットを使用します。宛先のIPアドレスとポート番号はステップ1-4)の Location にセットされているものを使用します。

SSDP攻撃はこれっぽいな。

やってみたいこと

アンドロイドをpcに接続して3G回線のパケットを見る。

qiita.com

専用のアプリ入れて解析情報を持ってくるのが王道っぽい。

file->export objects

パケットの中のファイルを抜き出せる。最強か。

export ssl keyでsslの鍵(多分共通鍵)も抜き出せる。神か。

disecctor

パケットを読む会(仮)とかいうくっそ面白そうな勉強会見つけた。んでそこでdisecctorとかいう機能があるらしい事を知った。

問題児たちがwiresharkのdissectorをLuaで書くそうですよ? | 迷い庭

ちなみにdisecctorは解剖という意味。

機能じゃないらしい。

ていうかこれ見てたらIHANETの文鳥の人いるんだけど。。。あの人パケット解析も出来たのか。。。

ていうかパケットを読む会、22回もやってるのか。一回行ってみたい。

最近のHTTPヘッダーはCookieがでかい本当にでかい(3パケット分くらいの時も)

へえ。

apply as column

パケット詳細で選択してる奴をColumnにする。おもしろかった。便利だ。

lua

vim:vimscript===wireshark:lua

ココ4日ずっと本屋に通ってwireshark関連や徳丸本みたりバイナリ系見てるしこの学生めっちゃセキュリティに対する情熱ありそう。

PS3

パケット通信の手法にもいろいろあるらしい。

ミクロ分析、マクロ分析、アノマリ、流量分析

NBNS2

NBNS、net bios name service。その謎は深い。

今回はその謎に迫っていこうと思う。

NBNSは端末Aが端末Bを探す時ブロードキャストを使う。ちなみにダイレクトブロードキャスト(X.X.X.255)を使う。

しかも2~3回投げる。

winsとも呼ばれる。

wpad

A wpadとかAAAA wpadとか。

proxy server softwareとしてはsquidやMS ISA Server、netscape proxyなどが有名である。

クライアントに串の自動設定方法っぽい。pacファイルによる串自動設定は知ってたけどwpadなるものは初めて聞いた。

ていうかうちの学校pacの自動設定だし。

dns wpadを使った設定はpac方式の進化系っぽい。プロキシ自動設定ファイルを指定しなくてもdnsが解決してくれる?

web proxy auto discovery

DNSだけかと思ったらDHCPでもあるのな。

DNSwpadを使う方法はdnsのレコード(Aレコードかな?PS. CNもいける。多分AAAAも)

https://blogs.technet.microsoft.com/jpieblog/2014/10/22/wpad/

wpadと追加して対応する。サーバ側にはwpad.datというファイルの名前にしておくこと。(proxy.pacみたいな感じで。)

ps4

wiresharkのバージョンあげようとしたら途中でコケた。そのうち戻す。なんかパケットがバイトとかbitで表される部分のコピーができなくなってた。まあいいけど。あとhttpからオブジェクトを出すメニューどっか行った。

isatap

トンネルプロトコル

ipv4ipv6の変換(っぽい動作)

にはトンネリングとデゥアルスタック、トランスレータがある。 ISATAP - Wikipedia

トンネリングの技術として

624、isatapがある。

624はルーター2ルーター

624は当たり前だが6を4にする。それに対してisatapはローカル内で426する。

isatapHostのアドレスには後半の32bitアドレスの先頭に5efeが付く

デゥアルスタックは6と4を共存させるだけ。共存を実現してるルーターをデゥアiルスタックルーターとか言ったりする。

624とisatapは併用出来る。