def output_human(self): source_addrs = [] dest_addrs = [] dest_serv = [] serv_hash = {} for i in self.source_addresses: for addr in i.get_real(): source_addrs.append(addr) for i in self.destination_addresses: for addr in i.get_real(): dest_addrs.append(addr) for i in self.services: for serv in i.get_real(): #(1, 65535), (80, 80), <Protocol: tcp> (s,d,p) = serv if not serv_hash.has_key(p): serv_hash[p] = {s:[d]} else: if not serv_hash[p].has_key(s): serv_hash[p][s] = [d] else: serv_hash[p][s].append(d) dest_serv.append(serv) for protocol in serv_hash: print "protocol %s" % protocol for source_ports in serv_hash[protocol]: print " source ports", source_ports dest_ports = serv_hash[protocol][source_ports] #for dest_ports in serv_hash[protocol][source_ports]: print " dest ports", dest_ports term = create_trigger_term( source_ips = source_addrs, dest_ips = dest_addrs, source_ports = [source_ports], dest_ports = dest_ports, protocols = [protocol]) for line in term.output(format='junos'): print line print "SOURCES",source_addrs print "DESTINATIONS",dest_addrs print "SERVICES", serv_hash
def output_human(self): source_addrs = [] dest_addrs = [] dest_serv = [] serv_hash = {} for i in self.source_addresses: for addr in i.get_real(): source_addrs.append(addr) for i in self.destination_addresses: for addr in i.get_real(): dest_addrs.append(addr) for i in self.services: for serv in i.get_real(): #(1, 65535), (80, 80), <Protocol: tcp> (s, d, p) = serv if not serv_hash.has_key(p): serv_hash[p] = {s: [d]} else: if not serv_hash[p].has_key(s): serv_hash[p][s] = [d] else: serv_hash[p][s].append(d) dest_serv.append(serv) for protocol in serv_hash: print "protocol %s" % protocol for source_ports in serv_hash[protocol]: print " source ports", source_ports dest_ports = serv_hash[protocol][source_ports] #for dest_ports in serv_hash[protocol][source_ports]: print " dest ports", dest_ports term = create_trigger_term(source_ips=source_addrs, dest_ips=dest_addrs, source_ports=[source_ports], dest_ports=dest_ports, protocols=[protocol]) for line in term.output(format='junos'): print line print "SOURCES", source_addrs print "DESTINATIONS", dest_addrs print "SERVICES", serv_hash
def output_terms(self): source_addrs = [] dest_addrs = [] dest_serv = [] terms = [] serv_hash = {} for i in self.source_addresses: for addr in i.get_real(): source_addrs.append(addr) for i in self.destination_addresses: for addr in i.get_real(): dest_addrs.append(addr) for i in self.services: for serv in i.get_real(): (s,d,p) = serv if not serv_hash.has_key(p): serv_hash[p] = {s:[d]} else: if not serv_hash[p].has_key(s): serv_hash[p] = {s:[d]} else: serv_hash[p][s].append(d) dest_serv.append(serv) for protocol in serv_hash: for source_ports in serv_hash[protocol]: dest_ports = serv_hash[protocol][source_ports] term = create_trigger_term( source_ips = source_addrs, dest_ips = dest_addrs, source_ports = [source_ports], dest_ports = dest_ports, protocols = [protocol]) terms.append(term) return terms
def output_terms(self): source_addrs = [] dest_addrs = [] dest_serv = [] terms = [] serv_hash = {} for i in self.source_addresses: for addr in i.get_real(): source_addrs.append(addr) for i in self.destination_addresses: for addr in i.get_real(): dest_addrs.append(addr) for i in self.services: for serv in i.get_real(): (s, d, p) = serv if not serv_hash.has_key(p): serv_hash[p] = {s: [d]} else: if not serv_hash[p].has_key(s): serv_hash[p] = {s: [d]} else: serv_hash[p][s].append(d) dest_serv.append(serv) for protocol in serv_hash: for source_ports in serv_hash[protocol]: dest_ports = serv_hash[protocol][source_ports] term = create_trigger_term(source_ips=source_addrs, dest_ips=dest_addrs, source_ports=[source_ports], dest_ports=dest_ports, protocols=[protocol]) terms.append(term) return terms