所以我使用这个过滤器来嗅探:
myfilter = 'tcp and tcp.flags.syn==1 and tcp.flags.ack==0 and tcp.flags.psh==0'
sniff(iface="myinter" , filter=myfilter , prn=mitm , count=1 )它还会获取不带指定标志的数据包:
我只需要ACK=0、SYN=1和PSH=0标志,但这不起作用
我也试着不使用==,只使用tcp.flags.syn 1,但仍然不起作用
我是不是做错了什么?
更新:
看起来它也给某些东西带来了语法错误:
tcpdump:语法错误
但是当我只使用tcp或TCP时,它没有给出任何语法错误,这个错误不会停止程序,但它看起来像是停止了过滤
即使我只是使用tcp.flags.syn==1或tcp.flags.syn 1,它仍然给出了这个语法错误...我的替罪羊是2.4
发布于 2018-12-24 07:42:00
您正在使用的筛选器根本不是有效的PCAP筛选器(因此出现语法错误消息)。在Unix系统上,您可以查看pcap-filter(7)和tcpdump(1)手册页,了解有关您可以使用的语法的更多信息。
像这样的东西应该是有效的:
myfilter="tcp[tcpflags] & (tcp-syn|tcp-ack|tcp-push) == tcp-syn"
sniff(iface="myinter" , filter=myfilter, prn=mitm , count=1)https://stackoverflow.com/questions/53803068
复制相似问题