́;ω;`)この広告は、90日以上更新していないブログに表示しています。2018-09-02ARPのキャプチャをしてみる前回の記事に引き続いて、今度はARPをキャプチャできるようにプログラムを作成してみた。作成したプログラムはこちら。github.comこれまでの知識やWiresharkでキャプチャした結果を頼りに作ってみた。以下に示すのは重要な部分のコード。}ARPの中身を見ようとするだけでかなり長いコードになってしまった。addressであると考えられる。Opcodeの部分でその要求と応答とを区別している。addressが全部0埋めでデータが送信される。addressの領域に格納されてデータが送信されることになる。XX:XX:XX:XX:XX:XXと表示するようにしたのが上記コードである。先人から学ぶ前回と同じく、tcpdumpのリポジトリ内にあるprint-arp.cというファイルから参考にできないか探していたところ、以下のようなコードがあった。*/ARPのOpcodeに該当する部分が、3,4という数値でもOKらしい。なんとなくRARPっぽい感じがするので念ののために調べてみると...d.hatena.ne.jpこのサイトで3,4がRARPのRequestとReplyに該当するOpcodeになるということが分かった。他にも、各領域のサイズをチェックしているような処理が見受けられた。len>");tcpdumpでは構造体を使って各データを表現している。私のプログラムはただ表示するだけで構造体等は意識していない。効率的にデータを扱うのなら構造体を使うべきなのだと思う。その場合はしっかりとサイズを確認しなければ、オーバーフローなどの脆弱性を生んでしまうのだと感じた。感想コードが増えると、その管理も煩雑になってくるので、ソースコードを複数のファイルに分割したり、重複処理を関数化したりなど、きれいにしなければならないとも感じた。加えて、セキュリティを勉強しているのにもかかわらず、サイズのチェック処理などを施していないのが良くないなと思った。未然に防ぐ立場も簡単ではないと思う。23:07ARPのキャプチャをしてみるTweet広告を非表示にする関連記事2018-09-02LinuxのRAWソケットからイーサネットフレームを取得してみるパケットの中身を覗きたくなったので作ってみた。18にチームHarekazeとして参加しました。18のpwn4とpwn5が解けなかったので復習。月別アーカイブはてなブログをはじめよう!HappyNote3966さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。