Skip to content

Commit 89f6cac

Browse files
author
Corb3nik
committed
Updates malware hunter with 32/64 bit options
1 parent 0ec96fb commit 89f6cac

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

analysis_tools/opcache_malware_hunt.py

+16-7
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ def compare_parsed_files(file1, file2):
232232

233233
return True
234234

235-
def create_diff_report(file1, file2, report_name, from_desc, to_desc):
235+
def create_diff_report(file1, file2, report_name, from_desc, to_desc, is_64_bit):
236236

237237
""" Create a report showing the differences between two files
238238
@@ -245,8 +245,8 @@ def create_diff_report(file1, file2, report_name, from_desc, to_desc):
245245
"""
246246

247247
# Disassemble each file and split into lines
248-
disassembled_1 = OPcacheDisassembler().disassemble(file1).split("\n")
249-
disassembled_2 = OPcacheDisassembler().disassemble(file2).split("\n")
248+
disassembled_1 = OPcacheDisassembler(is_64_bit).disassemble(file1).split("\n")
249+
disassembled_2 = OPcacheDisassembler(is_64_bit).disassemble(file2).split("\n")
250250

251251
# Differ
252252
html_differ = difflib.HtmlDiff()
@@ -296,7 +296,7 @@ def create_index(report_names):
296296
def show_help():
297297
""" Show the help menu"""
298298

299-
print "Usage : {0} [opcache_folder] [system_id] [php.ini] ".format(sys.argv[0])
299+
print "Usage : {0} [opcache_folder] [-a(86|64)] [system_id] [php.ini] ".format(sys.argv[0])
300300

301301
if __name__ == "__main__":
302302

@@ -309,8 +309,17 @@ def show_help():
309309

310310
# Paths to analyse
311311
opcache_folder = sys.argv[1]
312-
system_id = sys.argv[2]
313-
phpini_path = sys.argv[3]
312+
architecture = sys.argv[2]
313+
system_id = sys.argv[3]
314+
phpini_path = sys.argv[4]
315+
316+
# Is 64 bit
317+
is_64_bit = False
318+
if architecture == "-a64":
319+
is_64_bit = True
320+
elif architecture == "-a32":
321+
is_64_bit = False
322+
314323

315324
# Setup a new phpini for compilation
316325
setup_env(phpini_path)
@@ -359,7 +368,7 @@ def show_help():
359368
for idx, file, new_cache_file in flagged_files:
360369
print " - " + file
361370

362-
report = create_diff_report(new_cache_file, file, opcache_files[idx], "Source Code", "Cache")
371+
report = create_diff_report(new_cache_file, file, opcache_files[idx], "Source Code", "Cache", is_64_bit)
363372
reports += [report]
364373

365374
create_index(reports)

0 commit comments

Comments
 (0)