用python做 syn scan
但是这个速度实在是太感人了,有没有优化的方案?不想写C的
代码如下:
#coding: utf-8
import threading,time,os,argparse,subprocess,re,platform
from scapy.all import *
def port_service(port):
return port_dict[port] if port in port_dict else 'Unknown'
def send_syn(ip,port):
send(IP(dst=ip)/TCP(dport=port,sport=RandShort(),flags=2),verbose=False)
def get_ip_address(iface):
if os.name=='posix':
ipre = '%s.*?inet.*?(([0-9]{1,3}\.){3}[0-9]{1,3})'%iface
ipconfig_process = subprocess.Popen("ifconfig", stdout=subprocess.PIPE)
else:
ipre = 'IPv4.*?(([0-9]{1,3}\.){3}[0-9]{1,3})'%iface
ipconfig_process = subprocess.Popen("ipconfig", stdout=subprocess.PIPE)
output = ipconfig_process.stdout.read()
ip_pattern