发现到存活的IP以后,那么下一步就是针对特定的主机进行端口扫描了,因为端口对应的是网络服务及其应用段的程序,一旦发现开放的端口,便可以借此进行渗透。
假设ICMP 返回port-unreachable 响应代表端口关闭,但是如果目标系统不响应ICMP port-unreachable时,那么此端口可能处于开放状态
利用scapy,用UDP进行扫描
#!/usr/bin/python
import logging
import subprocess
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
from scapy.all import *
import time
if len(sys.argv) != 4:
print "Usage - ./udp_port.py [Target - TP] [First port] [Last port]"
print "Usage - ./udp-port.py 128.13.34.13 1 100"
sys.exit()
ip = sys.argv[1]
start = int(sys.argv[2])
end = int(sys.argv[3])
for port in range(start,end):
a = sr1(IP(dst=ip)/UDP(dport=port),timeout=5,verbose=0)
time.sleep(1)
if a == None:
print port
else:
pass
nmap端口扫描(基于UDP)
对特定ip端口扫描,如果不指定端口的话,namp默认会对1