我正在尝试使用scapy使用python3.5构建FIN扫描。我发送了一个FIN数据包,如果端口被打开,服务器应该忽略我的请求,如果它被关闭,我应该得到一个RST数据包。我什么都没得到,我已经尝试了很多主机,再加上使用圣诞扫描,我遇到了同样的问题。难道我做错了什么?这是代码:
...
ip_p = IP(dst=host_ip)
tcp_p = TCP(dport=(1,100),flags='F')
packets = ip_p/tcp_p
resp, non_resp = sr(packets,timeout=0.5)
for item in non_resp:
print(item.sport)
for sent,recv in resp:
if recv[1].flags == 4 : # 4 == RST packet
print('[>]Port:',sent[1].dport,'closed, but !port service on!')
if recv[1].flags != 4 :
print('[!]Port:',sent[1].dport,'opened')
print(recv[1].flags)