TCP ヘッダーのすべてのフラグを null に設定して、Scapy のパケットを IP アドレスに送信する方法を教えてもらえますか? これまで、どのフラグを設定するかを指定せずにパケットを送信しようとしましたが、パケットを送信するたびに Syn フラグが設定されているようです。
TCP Null スキャンについて詳しく知るために、それを知りたいです。あなたの助けと指導に感謝します。
TCP ヘッダーのすべてのフラグを null に設定して、Scapy のパケットを IP アドレスに送信する方法を教えてもらえますか? これまで、どのフラグを設定するかを指定せずにパケットを送信しようとしましたが、パケットを送信するたびに Syn フラグが設定されているようです。
TCP Null スキャンについて詳しく知るために、それを知りたいです。あなたの助けと指導に感謝します。
私は Scapy を使用していませんが、ドキュメントのクイック スキャンから、ドキュメントのこのページに、設定するフラグを指定しながら TCP パケットを作成する例があります。
http://www.secdev.org/projects/scapy/doc/usage.html#simple-one-liners
sr( IP(dst="192.168.1.*")/TCP(dport=80,flags="S") )
おそらく、空の文字列 "" を使用して、そのようなコマンドを試すことができますか? つまり、TCP(dport=80,flags="") ?
実際にTCPヘッダーを送信したくない場合は、IPパケットのプロトコルを設定し、その上にゼロの文字列を接着する方がよいでしょう。
sr( IP(dst="192.168.1.", proto="TCP")/"\0"*50)
編集:私は実際には構文に肯定的ではありません。「TCP」の代わりにプロトコル番号を使用する必要があるかもしれません
提案してくれた Andy と Jdizzle に感謝します。
Andy が以前に推奨したものを試してみましたが、wireshark で確認したところ、パケットに Syn フラグが設定されているように見えました。
良いニュースは、問題を解決したことです。送信するパケットを作成するときに、フラグを null に設定できます。
パケットを作成 --> a=TCP() し、フラグをゼロに設定 --> a.flags=0 ネットワーク経由で送信するパケットを準備する前に、この方法で事前設定できる属性が他にも多数あります。これらの属性は --> ls(a) で表示できます
ここで、a = パケットの名前。
これはうまくいきました!