ソースを参照

Modifying TRW

SaraBeatriz 6 年 前
コミット
6daee9439a
共有1 個のファイルを変更した13 個の追加11 個の削除を含む
  1. 13
    11
      Programas/trw_real.py

+ 13
- 11
Programas/trw_real.py ファイルの表示

@@ -32,12 +32,12 @@ def ipConversion(number, position):
32 32
     return mystr #devuelve los numeros en notacion string
33 33
 
34 34
 
35
-def AnalisisReduciendo(flowHash, num):
35
+def AnalisisReduciendo(sipList, num):
36 36
     connection = [0] * 2 #Lista para contener los valores de conecciones fallidas y conecciones buenas
37 37
     for i in flow["flows"]: #itera por cada elemento del diccionario de flows
38
-        dip = ipConversion(i["sip"], num) #Devuelve el ip en notacion punto-decimal
38
+        sip = ipConversion(i["sip"], num) #Devuelve el ip en notacion punto-decimal
39 39
         flags = i["tcpflags"].split(",")  #array of all tcp flags that are set
40
-        if num != 0 and ipConversion(i["sip"], num-1) not in flowHash: #Si en el paso anterior se vio que no
40
+        if num != 0 and ipConversion(i["sip"], num-1) not in sipList: #Si en el paso anterior se vio que no
41 41
                                                                      #tiene el length de puertos requerido, se ignora
42 42
             continue
43 43
         else:
@@ -56,16 +56,18 @@ def AnalisisReduciendo(flowHash, num):
56 56
     return ratioHash
57 57
 
58 58
 while myNum <4: #Se itera las cuatro veces de acuerdo con la notacion de ipv4
59
-    flowHash= AnalisisReduciendo(otherHash, myNum)
60
-    otherHash = {} #Se borra el hash para agregar elementos nuevos con la nueva etapa de la busqueda
61
-    for sip, dipHash in flowHash.items(): #se itera por todos los dip y sus counters o puertos
62
-        if (dipHash['dip'][0] / dipHash['dip'][1])  < 0: #si la cantidad de succesful
63
-                                                        #connections es mas que failed connections
59
+    sip_hash= AnalisisReduciendo(sipList, myNum)
60
+    sipList = [] #Se borra el hash para agregar elementos nuevos con la nueva etapa de la busqueda
61
+    for sip in reduced_sip: #se itera por todos los sip
62
+        if (ratioHash[sip][0] / ratioHash[sip][1])  < 1: #si la cantidad de succesful
63
+                    #b                #g                    #connections es mas que failed connections
64 64
             #not scanner, ignore
65
-        else if (dipHash['dip'][0] / dipHash['dip'][1])  < p:
66
-            #not scanner, ignore
67
-        else:
65
+        elif (ratioHash[sip][0] / ratioHash[sip][1])  < p: #mas failed que succesful, pero no llega al threshold
66
+            #not scanner, ignore                            #se debe tener en cuenta que es suspicious pero no taaanto
67
+        else: #el ratio de failed a succesful llega al threshold pautado
68 68
             #scanner, oh oh
69
+            sipList.append(sip)
70
+
69 71
 
70 72
 
71 73
     myNum += 1