From 020ca4be24d4e38d8ac8f3fff6551d588042347e Mon Sep 17 00:00:00 2001 From: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com> Date: Wed, 12 Jun 2024 18:01:44 -0400 Subject: [PATCH] [New Rule] Rapid7 Threat Command CVEs Correlation (#3718) * new rule 'Rapid7 Threat Command CVEs Correlation' * Update rules/threat_intel/threat_intel_rapid7_threat_command.toml Co-authored-by: Justin Ibarra <16747370+brokensound77@users.noreply.github.com> * updated threat index and tags * changed 'indicator match' to 'threat match' for tags * removed timeline * updating integrations to match main * re-adding rapid7 threat command integration manifest and schema * reverting changes; removing timeline * changed max signals to 10000 --------- Co-authored-by: Justin Ibarra <16747370+brokensound77@users.noreply.github.com> --- .../etc/integration-manifests.json.gz | Bin 10779 -> 11041 bytes .../etc/integration-schemas.json.gz | Bin 3609549 -> 3611934 bytes detection_rules/schemas/definitions.py | 3 +- .../threat_intel_indicator_match_address.toml | 4 +- .../threat_intel_indicator_match_hash.toml | 4 +- ...threat_intel_indicator_match_registry.toml | 4 +- .../threat_intel_indicator_match_url.toml | 4 +- .../threat_intel_rapid7_threat_command.toml | 111 ++++++++++++++++++ tests/test_all_rules.py | 2 + 9 files changed, 123 insertions(+), 9 deletions(-) rename rules/{cross-platform => threat_intel}/threat_intel_indicator_match_address.toml (99%) rename rules/{cross-platform => threat_intel}/threat_intel_indicator_match_hash.toml (99%) rename rules/{cross-platform => threat_intel}/threat_intel_indicator_match_registry.toml (99%) rename rules/{cross-platform => threat_intel}/threat_intel_indicator_match_url.toml (99%) create mode 100644 rules/threat_intel/threat_intel_rapid7_threat_command.toml diff --git a/detection_rules/etc/integration-manifests.json.gz b/detection_rules/etc/integration-manifests.json.gz index 566d3eb2c23182f9d57a6dc1b1f851d2013ec25c..94dabf82aec6125e850f969f5c25b55094da4a54 100644 GIT binary patch delta 10379 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 PeiorIobrliMMd~O&DI-D delta 10115 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 delta 20076 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 "now-30d/d" and vulnerability.id : * and event.module: ti_rapid7_threat_command +""" +timestamp_override = "event.ingested" +type = "threat_match" + +query = ''' +vulnerability.id : * +''' + + +[[rule.threat_filters]] + +[rule.threat_filters."$state"] +store = "appState" +[rule.threat_filters.meta] +disabled = false +key = "rapid7.tc.vulnerability.id" +negate = true +type = "exists" +[rule.threat_filters.query.exists] +field = "rapid7.tc.vulnerability.id" +[[rule.threat_mapping]] + +[[rule.threat_mapping.entries]] +field = "vulnerability.id" +type = "mapping" +value = "vulnerability.id" + + diff --git a/tests/test_all_rules.py b/tests/test_all_rules.py index ea3fc4e95..85994f02e 100644 --- a/tests/test_all_rules.py +++ b/tests/test_all_rules.py @@ -685,6 +685,8 @@ class TestRuleMetadata(BaseRuleTest): any(ri in [*map(str.lower, definitions.MACHINE_LEARNING_PACKAGES)] for ri in rule_integrations): continue + elif rule.contents.data.type == 'threat_match': + continue err_msg = f'{self.rule_str(rule)} {rule_integration} tag, index pattern missing.' failures.append(err_msg)