Scapy畑でつかまえて

最近ScapyやらPF_PACKETやらを触っていたのだがどちらも明らかに日本語の資料が少ない。 英語のプロならば速攻で英文のドキュメントを読んで理解出来るのだろうが僕は出来ないので、適当に理解するのに使ったコードとか書き残す。

本文

適当に調べたりして書いたコードなので動作は保証出来ない…

from scapy.all import *

def a(packet):
#引数としてパケットが渡されるのでちゃんと拾う
  packet.show()
  #<変数名>.show()でパケット内部を表示する。

if __name__ == '__main__':
  while True:
    sniff(iface="<eth1とかenp0s3とか適宜変える>",prn=a)
    #引数のifaceにキャプチャしたいネットワークインターフェース名を入れる
    #prnには拾ったパケットを送る関数の名前を入れる
    #他にもfilterとかあるけどそこらへんは参考資料見て

ちなみに、送信については”send(<パケットの変数名>)”でパケットの送信が遅れたりする。 だけど、あまりに日本語で得られる情報が少なかったので書いた(Scapyのプロは日本語でScapy使ったプログラミング記事書いてほしい)

他にも書こうと思ったけど、あまりに眠いので暇が出来たときに続きは書きます。