1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
-
-
-
-
-
-
-
- from silk import *
- startDate = "2009/04/20"
- endDate = "2009/04/22"
- p = 2
-
- def Analisis():
- counter = 0
- sampleHash={}
- flow_counter = 0
- for filename in FGlob(classname="all", type="all", start_date=startDate, end_date=endDate, site_config_file="/data/silk.conf", data_rootdir="/data"):
- for rec in silkfile_open(filename, READ):
- flow_counter += 1
- if (':' in str(rec.sip)):
- continue
- else:
- connection = [0] * 2
- sip = str(rec.sip)
- flags = str(rec.tcpflags)
-
-
- if 'A' in flags:
- connection[1]=1
- else:
- connection [0] =1
- if sip in sampleHash:
- sampleHash[sip][0]+= connection[0]
- sampleHash[sip][1]+= connection[1]
- else:
- sampleHash[sip] = [connection[0], connection[1]]
-
-
- return sampleHash
-
- sip_connections_list = Analisis()
-
- sipList = []
- for sip in sip_connections_list:
- if (sip_connections_list[sip][1] != 0) and ((sip_connections_list[sip][0] / sip_connections_list[sip][1]) < 1) :
-
-
- continue
- elif (sip_connections_list[sip][1] != 0) and ((sip_connections_list[sip][0] / sip_connections_list[sip][1]) < p):
-
- continue
- elif (sip_connections_list[sip][1] == 0 and sip_connections_list[sip][0] > 10):
-
- sipList.append(sip)
- else:
-
- sipList.append(sip)
-
-
|