노현종

mind control

...@@ -57,19 +57,11 @@ namespace VulnCrawler ...@@ -57,19 +57,11 @@ namespace VulnCrawler
57 var newOid = entry.Oid; 57 var newOid = entry.Oid;
58 Blob newBlob = r.Lookup<Blob>(newOid); 58 Blob newBlob = r.Lookup<Blob>(newOid);
59 string newContent = newBlob.GetContentText(); 59 string newContent = newBlob.GetContentText();
60 -
61 -
62 -
63 - //ContentChanges changes = r.Diff.Compare(oldBlob, newBlob);
64 -
65 - // Console.WriteLine(changes.Patch);
66 -
67 // @@ -290,8 + 290,12 @@ def i 60 // @@ -290,8 + 290,12 @@ def i
68 // @@ -290,8 +290,12 @@ def is_safe_url(url, host=None): 61 // @@ -290,8 +290,12 @@ def is_safe_url(url, host=None):
62 + // 정규식(파이썬 함수만 걸러냄), 위 형식에서 290,8은 290은 시작줄, 8은 라인수, -는 변경전 +는 변경후
69 var regs = Regex.Matches(entry.Patch, @"@@ \-(?<oldStart>\d+),(?<oldLines>\d+) \+(?<newStart>\d+),(?<newLines>\d+) @@ def (?<methodName>\w+)"); 63 var regs = Regex.Matches(entry.Patch, @"@@ \-(?<oldStart>\d+),(?<oldLines>\d+) \+(?<newStart>\d+),(?<newLines>\d+) @@ def (?<methodName>\w+)");
70 64
71 -
72 -
73 if (regs.Count > 0) { 65 if (regs.Count > 0) {
74 Console.BackgroundColor = ConsoleColor.DarkBlue; 66 Console.BackgroundColor = ConsoleColor.DarkBlue;
75 Console.WriteLine($"Old Content: \n{oldContent}"); 67 Console.WriteLine($"Old Content: \n{oldContent}");
...@@ -78,10 +70,7 @@ namespace VulnCrawler ...@@ -78,10 +70,7 @@ namespace VulnCrawler
78 Console.BackgroundColor = ConsoleColor.DarkMagenta; 70 Console.BackgroundColor = ConsoleColor.DarkMagenta;
79 Console.WriteLine($"New Content: \n{newContent}"); 71 Console.WriteLine($"New Content: \n{newContent}");
80 Console.ResetColor(); 72 Console.ResetColor();
81 -
82 -
83 Console.BackgroundColor = ConsoleColor.DarkRed; 73 Console.BackgroundColor = ConsoleColor.DarkRed;
84 -
85 Console.WriteLine($"Patched: \n{entry.Patch}"); 74 Console.WriteLine($"Patched: \n{entry.Patch}");
86 75
87 Console.ResetColor(); 76 Console.ResetColor();
...@@ -117,27 +106,10 @@ namespace VulnCrawler ...@@ -117,27 +106,10 @@ namespace VulnCrawler
117 * CVE 탐지된 코드 순환 -> def로 시작하는 파이썬 함수만 걸러내야함 106 * CVE 탐지된 코드 순환 -> def로 시작하는 파이썬 함수만 걸러내야함
118 * 문제는 파이썬은 c와 달리 {}가 없어서 상당히 귀찮음 107 * 문제는 파이썬은 c와 달리 {}가 없어서 상당히 귀찮음
119 */ 108 */
120 - //bool found = false;
121 - //while (!reader.EndOfStream) {
122 109
123 - // string line = reader.ReadLine();
124 -
125 - // if (line.Contains(string.Join("def ", methodName))) {
126 -
127 - // }
128 -
129 - // if (found) {
130 -
131 - // }
132 - //}
133 } 110 }
134 111
135 -
136 -
137 -
138 -
139 string replace = Regex.Replace(oldBuilder.ToString(), " ", ""); 112 string replace = Regex.Replace(oldBuilder.ToString(), " ", "");
140 -
141 Console.WriteLine($"Builder: \n{replace}"); 113 Console.WriteLine($"Builder: \n{replace}");
142 114
143 } 115 }
......