Skip to content

Commit 50054fc

Browse files
committed
amazon directory
1 parent 9f2404c commit 50054fc

File tree

1 file changed

+25
-20
lines changed

1 file changed

+25
-20
lines changed

ossec_ruleset.py

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env python
22
# OSSEC Ruleset Update
33

4-
# v2.3.2 2016/05/05
4+
# v2.3.3 2016/06/11
55
# Created by Wazuh, Inc. <[email protected]>.
66
77
# This program is a free software; you can redistribute it and/or modify it under the terms of GPLv2
@@ -851,23 +851,20 @@ def setup_decoders(decoder):
851851

852852
def setup_rules(rule):
853853
if rule == "ossec":
854-
new_ossec_rules_path = "{0}/ossec/rules/*rules*.xml".format(new_rules_path)
855-
ossec_rules = sorted(glob.glob(new_ossec_rules_path))
854+
rules_path = "{0}/ossec/rules/*_rules.xml".format(new_rules_path)
855+
else:
856+
rules_path = "{0}/{1}/*_rules.xml".format(new_rules_path, rule)
856857

857-
for ossec_rule in ossec_rules:
858-
# Do not copy folders or local_rules.xml
859-
if os.path.isfile(ossec_rule) and "local_rules.xml" not in ossec_rule:
860-
split = ossec_rule.split("/")
861-
filename = split[len(split) - 1]
862-
dest_file = "{0}/rules/{1}".format(ossec_path, filename)
863-
shutil.copyfile(ossec_rule, dest_file)
864-
os.chown(dest_file, root_uid, ossec_gid)
858+
new_rules = sorted(glob.glob(rules_path))
865859

866-
else:
867-
src_file = "{0}/{1}/{1}_rules.xml".format(new_rules_path, rule)
868-
dest_file = "{0}/rules/{1}_rules.xml".format(ossec_path, rule)
869-
shutil.copyfile(src_file, dest_file)
870-
os.chown(dest_file, root_uid, ossec_gid)
860+
for new_rule in new_rules:
861+
# Do not copy folders or local_rules.xml
862+
if os.path.isfile(new_rule) and "local_rules.xml" not in new_rule:
863+
split = new_rule.split("/")
864+
filename = split[len(split) - 1]
865+
dest_file = "{0}/rules/{1}".format(ossec_path, filename)
866+
shutil.copyfile(new_rule, dest_file)
867+
os.chown(dest_file, root_uid, ossec_gid)
871868

872869

873870
def setup_roochecks(rootcheck):
@@ -885,9 +882,17 @@ def setup_ossec_conf(item, type_item):
885882
return
886883

887884
if type_item == "rule":
888-
if not regex_in_file("\s*<include>{0}_rules.xml</include>".format(item), ossec_conf):
889-
logger.log("\t\tNew rule in ossec.conf: '{0}'.".format(item))
890-
write_before_line("<include>local_rules.xml</include>", ' <include>{0}_rules.xml</include>'.format(item), ossec_conf)
885+
886+
if item == "amazon": # Special case
887+
new_items = ["amazon", "amazon-ec2", "amazon-iam"]
888+
else:
889+
new_items = [item]
890+
891+
for new_item in new_items:
892+
if not regex_in_file("\s*<include>{0}_rules.xml</include>".format(new_item), ossec_conf):
893+
logger.log("\t\tNew rule in ossec.conf: '{0}'.".format(new_item))
894+
write_before_line("<include>local_rules.xml</include>", ' <include>{0}_rules.xml</include>'.format(new_item), ossec_conf)
895+
891896
elif type_item == "rootcheck":
892897
if not regex_in_file("<rootcheck>", ossec_conf) or regex_in_file("\s*<rootcheck>\s*\n\s*<disabled>\s*yes", ossec_conf):
893898
logger.log("\t\tRootchecks disabled in ossec.conf -> no activate rootchecks.")
@@ -1021,7 +1026,7 @@ def clean_directory():
10211026

10221027
def usage():
10231028
msg = """
1024-
OSSEC Wazuh Ruleset Update v2.3.2
1029+
OSSEC Wazuh Ruleset Update v2.3.3
10251030
Github repository: https://github.com/wazuh/ossec-rules
10261031
Full documentation: http://documentation.wazuh.com/en/latest/ossec_ruleset.html
10271032

0 commit comments

Comments
 (0)