Bro IDS 搜索

Bro IDS searches

我以前从未使用过 Python 或 Perl。由于不可预见的情况,我从工作中得到了一个项目,希望你们中的一个能提供帮助。我们将 BRO 用于 IDS 系统。我应该编写一个脚本来打开一个日志文件(.gz 格式),在日志中搜索保存在文本文件中的关键字列表,排除任何在另一个文件中列出关键字的结果,然后输出这些结果进入一个新的.gz。它应该每天 运行 3 次。我不确定从哪里开始,但任何帮助都会非常有帮助并且非常感谢。

啊,经过几次重读,我想我开始明白问题了……IDS 和 BRO 与问题完全无关 并且实际上混淆了事情

我想我可以把你的问题分解成几个子问题

问题1.如何打开gzip编码的文件进行阅读?

import gzip
with gzip.GzipFile("/path/to/some_log_file.gz") as input_plaintext_filehandle:
     for line in input_plaintext_filehandle:
         print line

问题 2。如何写入 gzip 文件?

import gzip
with gzip.GzipFile("/path/to/some_log_file.gz","w") as output_file:
     output_file.write("Hello GZIP World")

问题 3.如何根据 wordlist.txt 过滤掉行?

words = set(open("wordlist.txt").read().split())
for line in open_file_handle:
    if words.intersection(line.split()):
       print "Match Found"
    else:
       print "No Match Found"

我认为这应该足以让您开始解决这个问题。一旦遇到困难,请随时回来并展示一些代码