anhängt Ich habe 4 Listen:Python Überprüfung drei Listen bis vierten
"criticallist" `
[ade4c7059e17ab9e47d2aaec6cf04a9d, 882edee4cc71806190ca43993e8b2eb5, nekspzwjxhqroiu.com, htfbzqewll.org]`
"Master"
[4d7d1c89529bcfcbbbbf9d6a2ba42cb5, 9f26da4de1653f609e7b4bcaade63daa]
und dann jede Funktion hat separate Listen von md5 ist - [Ex. 49f12a7b358c7f7cba005610210418aa] "md5-ThreatExpert" und "md5-HybridAnalysis", beide innerhalb ihrer jeweiligen Funktionen, die ich in "md5threat" umbenennen.
und dann in jeder Funktion versuche ich "criticallist" und "Master" gegen "md5threat" zu vergleichen.
Alles von "md5threat", das weder "criticallist" noch "master" ist, wird zu "md5broinput" hinzugefügt.
AND Wenn es zu "md5broinput" hinzugefügt wird, wird es auch an "master" angehängt.
"md5broinput" ist jeden Tag neu und ich wische "Master" jede Woche.
def md5threatexpertcritical():
filename = open("md5-ThreatExpert-bro", 'w') #input file for bro script gone through critical checks
md5threat = "md5-ThreatExpert" #latest md5's from MISP
#create bromaster if doesn't exist
if os.path.exists("bromasterlist"):
pass
else:
f = file("bromasterlist", "w")
f.close()
master = "bromasterlist" #master bro list that we've already added to bro
PATH = "/opt/critical-stack/frameworks/intel"
CRITICAL = "master-public.bro.dat"
CRITICALSTACK = os.path.join(PATH, CRITICAL)
criticallist = "/home/money/Documents/hybrid/critical"
whitelist = open(criticallist,'w')
with open(CRITICALSTACK,'r') as CRITICALSTACK1:
reader = csv.reader(CRITICALSTACK1, delimiter='\t')
CRITICAL = []
for row in reader:
CRITICAL.append(row[0])
whitelist.write("\n".join(CRITICAL))
x=[]
y=[]
z=[]
md5broinput=[]
with open(criticallist, 'r') as critical:
for line in critical:
line = line.strip()
x.append(line)
with open(master, 'r') as bromaster:
for line in bromaster:
line = line.strip()
y.append(line)
with open(md5threat, 'r') as md5threat:
for line in md5threat:
line = line.strip()
z.append(line)
for md5 in z:
if md5 in y:
print md5+" is in bromaster"
pass
elif md5 in x:
print md5+" is in critical"
pass
elif md5 not in x and y:
y.append(md5)
md5broinput.append(md5)
filename.write("\n".join(md5broinput))
filename.close()
f=open(master,'a')
f.write("\n".join(set(y)))
f.write("\n")
f.close()
def md5hybridanalysiscritical():
filename = open("md5-HybridAnalysis-bro", 'w+')
md5threat = "md5-HybridAnalysis" #latest md5's from MISP
master = "bromasterlist" #master bro list that we've already added to bro
PATH = "/opt/critical-stack/frameworks/intel"
CRITICAL = "master-public.bro.dat"
CRITICALSTACK = os.path.join(PATH, CRITICAL)
criticallist = "/home/money/Documents/hybrid/critical"
x=[]
y=[]
z=[]
md5broinput=[]
with open(criticallist, 'r') as critical:
for line in critical:
line = line.strip()
x.append(line)
with open(master, 'r') as bromaster:
for line in bromaster:
line = line.strip()
y.append(line)
with open(md5threat, 'r') as md5threat:
for line in md5threat:
line = line.strip()
z.append(line)
for md5 in z:
if md5 in y:
print md5+" is in bromaster"
pass
elif md5 in x:
print md5+" is in critical"
pass
elif md5 not in x and y:
y.append(md5)
md5broinput.append(md5)
filename.write("\n".join(md5broinput))
filename.close()
f=open(master,'a')
f.write("\n".join(set(y)))
f.write("\n")
f.close()
Der erste Satz Ihrer Frage Sais Sie haben vier Listen namens "criticallist, master, md5threat, md5broinput", ** Nur eine davon ist eine Liste in Ihrem Code ** die anderen Listen werden von den Variablen 'x notiert, y, z ', was es nach dem Lesen der Beschreibungen über die "Master" -Liste und andere viel schwieriger zu verstehen macht. –