1
네트워크에 대해 자세히 알아 보려면 포트 스캐너를 프로그래밍했습니다.
그러나 어떤 이유로 스캔 한 모든 포트에 대해서만 port n is closed
을 반환합니다.파이썬 scapy portscanner 문제
import sys
from scapy.all import *
target = str(sys.argv[1])
beg = int(sys.argv[2])
ran = int(sys.argv[3])
ptable = []
print "beginning port scan on target: " + target
for x in range(beg,ran):
pkt = IP(dst=target)/TCP(dport=x,flags="S")
ans,uans = sr(pkt,timeout=0.5)
if TCP in ans:
if ans[TCP].flags == "SA":
ptable.append(1)
else:
ptable.append(0)
print "======================== port scan summary ==========================="
print " "
for i in range(beg,ran):
if ptable[i-1] == 1:
print "port " + str(i) + " is open"
else:
print "port " + str(i) + " is closed"
첫 번째'for' 루프에'print'를 추가하면'ans [TCP] .flags'에 대한 결과를 볼 수 있습니다 – furas