bsp; if not args.timeout and not args.retry: obj_ping = Discovery_Scan(args) elif args.timeout and not args.retry: obj_ping = Discovery_Scan(args,timeout=args.timeout) elif not args.timeout and args.retry: obj_ping = Discovery_Scan(args,retry=args.retry) else: obj_ping = Discovery_Scan(args,args.timeout,args.retry) ip_list = obj_ping.targets[0] if ip_list: #ARP扫描 if args.ARP: for pdst in ip_list: t = threading.Thread(target=obj_ping.arp_scan,args=(pdst,)) t.start() while threading.activeCount() != 1: #避免线程还没有运行完就提前输出不全的结果 time.sleep(1) #ICMP扫描 elif args.ICMP: for dst in ip_list: t = threading.Thread(target=obj_ping.icmp_scan,args=(dst,)) t.start() while threading.activeCount() != 1: #避免线程还没有运行完就提前输出不全的结果 time.sleep(1) #TCP扫描 elif args.TCP: port_list = [80,443,21,22,23,25,53,135,139,137,445,1158,1433,1521,3306,3389,7001,8000,8080,9090] print '[+]请稍等,时间较长!' for dst in ip_list: print '[!]扫描...',dst for port in port_list: t = threading.Thread(target=obj_ping.tcp_scan,args=(dst,port)) t.start()
print '[+]正在处理扫描信息.' while threading.activeCount() != 1: #避免线程还没有运行完就提前输出不全的结果 time.sleep(1)
if not obj_ping.tcp_info: print '\n' print '=' * 20 print '[+]未发现在线主机.' else: &nb |