From 63ec8342052bcc5a59ba774b48b4157a69eb5a94 Mon Sep 17 00:00:00 2001 From: research-bot Date: Tue, 3 Sep 2024 16:36:54 +0530 Subject: [PATCH 01/21] updating version 1 --- README.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/README.md b/README.md index 9b2e22e0e9..d88f5a6c51 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ This project gives you access to our repository of Analytic Stories, security gu - [Splunk Attack Range](https://github.com/splunk/attack_range): An attack simulation lab built around Splunk. - [Contentctl](https://github.com/splunk/contentctl): The tool that enables us to build, test, and package our content for distribution. +- [Attack data](https://github.com/splunk/attack_data): The is a collection of attack data that is used to test our content. # Get Content🛡 The latest Splunk Security Content can be obtained via: @@ -73,6 +74,64 @@ To view an up-to-date detection coverage map for all the content tagged with MIT * [lookups/](lookups/): Implements Splunk’s lookup, usually to provide a list of static values like commonly used ransomware extensions. * [data_sources/](data_sources/): Defines the data sources, the necessary TA or App to collect them and the fields provided that can be used by the detections. +# Getting Started 🚀 + +Follow these steps to get started with Splunk Security Content. + +1. Clone this repository using `git clone https://github.com/splunk/security_content.git` +2. Navigate to the repository directory using `cd security_content` +3. Install contentctl using `pip install contentctl` to install the latest version of contentctl, this is a pre-requisite to validate, build and test the content like the Splunk Threat Research team + +🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute to the Splunk Security Content project. + +# Elements of a detection: + +Here is a quick overview of the elements of a detection with an explanation +``` +name: Name of the detection, this is the name that will be displayed in the Splunk UI +id: Unique identifier for the detection, UUID +version: Version of the detection, update this everytime a change is made to the file +date: Date of the detection, update this everytime a change is made to the file +author: Author of the detection +type: Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) +status: Status of the detection (Production, Experimental, Deprecated) +data_source: Reference to the data source that the detection is based, use the name from the data_sources/ folder +description: Description of the detection +search: Splunk search to be executed, this is the core of the detection. Detections can be either writen against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a _filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. +how_to_implement: Details on how to implement the detection +known_false_positives: Details on known false positives triggered in this detection. +references: List of references to the mitre attack, details of attack vector, blog posts, vulnerabilities, etc. +- +tags: + analytic_story: + - Name of the analytic story that the detection is part of + asset_type: Which assets are monitored by this detection(Endpoint, Network, AWS Tenant, Azure Tenant, etc.) + confidence: Confidence level of the detection + cve: List of CVEs that are related to the detection + - + impact: A number between 0-100 that represents the impact of the detection + message: The risk message that will be displayed in the Splunk Enterprise Security + mitre_attack_id: List of MITRE ATT&CK IDs that are related to the detection + - + observable: List of observables that are related to the detection + - name: Field name of the observable + type: Type of the observable (User, Endpoint, File, Process Name) + role: + - Role of the observable (Victim, Attacker) + product: + - List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) + required_fields: + - List of required fields that are needed to execute the detection + risk_score: A number between 0-100 that represents the risk score of the detection + security_domain: The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) +tests: +- name: Name of the test + attack_data: URL to the attack data that is used to test the detection + - data: Data of the attack + source: Source of the attack + sourcetype: Sourcetype from the attack +``` + # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. From 0573951c3ed28d0cbf22236cb3aeb89ac323b6fd Mon Sep 17 00:00:00 2001 From: research-bot Date: Tue, 3 Sep 2024 17:30:50 +0530 Subject: [PATCH 02/21] updating recommendations --- README.md | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d88f5a6c51..4cabbfbffa 100644 --- a/README.md +++ b/README.md @@ -84,9 +84,10 @@ Follow these steps to get started with Splunk Security Content. 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute to the Splunk Security Content project. -# Elements of a detection: +# Elements of a detection.yml: Here is a quick overview of the elements of a detection with an explanation + ``` name: Name of the detection, this is the name that will be displayed in the Splunk UI id: Unique identifier for the detection, UUID @@ -132,6 +133,33 @@ tests: sourcetype: Sourcetype from the attack ``` +# Elements of a analytics_story.yml: +``` +name: Name of the analytic story +id: Unique identifier for the analytic story, UUID +version: Version of the analytic story, update this everytime a change is made to the file +date: Date of the analytic story +author: Author of the analytic story +description: Description of the analytic story +narrative: Narrative of the analytic story +references: List of references to the analytic story +- +tags: + category: List of categories that the analytic story is related to + - + product: List of products that the analytic story is related to + - + usecase: Usecase of the analytic story (Advanced Persistent Threat, Cloud,Vulnerability, Malware etc.) +``` +# Recommendations + +- 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. + +- In order to build an content app that specific for your organization, we strongly recommend that you start with keeping only the detections that are related to your organization and remove other yamls that are not related to your organization. This includes selecting detections, stories, macros, lookups that are used by the detection ymls. + +- If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. + + # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. From 39bfbf807a5b45a70b70f5920198535cc18edb20 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 4 Sep 2024 20:06:55 +0530 Subject: [PATCH 03/21] table format --- README.md | 120 ++++++++++++++++++++++++++---------------------------- 1 file changed, 58 insertions(+), 62 deletions(-) diff --git a/README.md b/README.md index 4cabbfbffa..331f5d0e32 100644 --- a/README.md +++ b/README.md @@ -87,70 +87,66 @@ Follow these steps to get started with Splunk Security Content. # Elements of a detection.yml: Here is a quick overview of the elements of a detection with an explanation - -``` -name: Name of the detection, this is the name that will be displayed in the Splunk UI -id: Unique identifier for the detection, UUID -version: Version of the detection, update this everytime a change is made to the file -date: Date of the detection, update this everytime a change is made to the file -author: Author of the detection -type: Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) -status: Status of the detection (Production, Experimental, Deprecated) -data_source: Reference to the data source that the detection is based, use the name from the data_sources/ folder -description: Description of the detection -search: Splunk search to be executed, this is the core of the detection. Detections can be either writen against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a _filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. -how_to_implement: Details on how to implement the detection -known_false_positives: Details on known false positives triggered in this detection. -references: List of references to the mitre attack, details of attack vector, blog posts, vulnerabilities, etc. -- -tags: - analytic_story: - - Name of the analytic story that the detection is part of - asset_type: Which assets are monitored by this detection(Endpoint, Network, AWS Tenant, Azure Tenant, etc.) - confidence: Confidence level of the detection - cve: List of CVEs that are related to the detection - - - impact: A number between 0-100 that represents the impact of the detection - message: The risk message that will be displayed in the Splunk Enterprise Security - mitre_attack_id: List of MITRE ATT&CK IDs that are related to the detection - - - observable: List of observables that are related to the detection - - name: Field name of the observable - type: Type of the observable (User, Endpoint, File, Process Name) - role: - - Role of the observable (Victim, Attacker) - product: - - List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) - required_fields: - - List of required fields that are needed to execute the detection - risk_score: A number between 0-100 that represents the risk score of the detection - security_domain: The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) -tests: -- name: Name of the test - attack_data: URL to the attack data that is used to test the detection - - data: Data of the attack - source: Source of the attack - sourcetype: Sourcetype from the attack -``` +| Key | Type | Description | +|-----------------------|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| name | | Name of the detection, this is the name that will be displayed in the Splunk UI | +| id | | Unique identifier for the detection, UUID | +| version | | Version of the detection, update this every time a change is made to the file | +| date | | Date of the detection, update this every time a change is made to the file | +| author | | Author of the detection | +| type | | Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) | +| status | | Status of the detection (Production, Experimental, Deprecated) | +| data_source | | Reference to the data source that the detection is based, use the name from the data_sources/ folder | +| description | | Description of the detection | +| search | | Splunk search to be executed, this is the core of the detection. Detections can be either written against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. | +| how_to_implement | | Details on how to implement the detection | +| known_false_positives | | Details on known false positives triggered in this detection. | +| references | | List of references to the MITRE ATT&CK, details of attack vector, blog posts, vulnerabilities, etc. | +| tags | | | +| analytic_story | | Name of the analytic story that the detection is part of | +| asset_type | | Which assets are monitored by this detection (Endpoint, Network, AWS Tenant, Azure Tenant, etc.) | +| confidence | | Confidence level of the detection | +| cve | | List of CVEs that are related to the detection | +| impact | | A number between 0-100 that represents the impact of the detection | +| message | | The risk message that will be displayed in the Splunk Enterprise Security | +| mitre_attack_id | | List of MITRE ATT&CK IDs that are related to the detection | +| observable | | List of observables that are related to the detection | +| name | | Field name of the observable | +| type | | Type of the observable (User, Endpoint, File, Process Name) | +| role | | Role of the observable (Victim, Attacker) | +| product | | List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) | +| required_fields | | List of required fields that are needed to execute the detection | +| risk_score | | A number between 0-100 that represents the risk score of the detection | +| security_domain | | The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) | +| tests | | | +| name | | Name of the test | +| attack_data | | URL to the attack data that is used to test the detection | +| data | | Data of the attack | +| source | | Source of the attack | +| sourcetype | | Sourcetype from the attack | # Elements of a analytics_story.yml: -``` -name: Name of the analytic story -id: Unique identifier for the analytic story, UUID -version: Version of the analytic story, update this everytime a change is made to the file -date: Date of the analytic story -author: Author of the analytic story -description: Description of the analytic story -narrative: Narrative of the analytic story -references: List of references to the analytic story -- -tags: - category: List of categories that the analytic story is related to - - - product: List of products that the analytic story is related to - - - usecase: Usecase of the analytic story (Advanced Persistent Threat, Cloud,Vulnerability, Malware etc.) -``` + +# Your Markdown Title + +Some introductory text or description. + +| Key | Type | Description | +|------------|--------|---------------------------------------------------------------------------------------------------| +| name | | Name of the analytic story | +| id | | Unique identifier for the analytic story, UUID | +| version | | Version of the analytic story, update this every time a change is made to the file | +| date | | Date of the analytic story | +| author | | Author of the analytic story | +| description| | Description of the analytic story | +| narrative | | Narrative of the analytic story | +| references | | List of references to the analytic story | +| tags | | | +| category | | List of categories that the analytic story is related to | +| product | | List of products that the analytic story is related to | +| usecase | | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | + +More text or content can follow here. # Recommendations - 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. From 4a1b68b0d8b2725eefde1e05925faa77613de13b Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 4 Sep 2024 20:12:44 +0530 Subject: [PATCH 04/21] formatting --- README.md | 87 +++++++++++++++++++++++++++---------------------------- 1 file changed, 42 insertions(+), 45 deletions(-) diff --git a/README.md b/README.md index 331f5d0e32..d1abd16f8e 100644 --- a/README.md +++ b/README.md @@ -89,62 +89,59 @@ Follow these steps to get started with Splunk Security Content. Here is a quick overview of the elements of a detection with an explanation | Key | Type | Description | |-----------------------|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| name | | Name of the detection, this is the name that will be displayed in the Splunk UI | -| id | | Unique identifier for the detection, UUID | -| version | | Version of the detection, update this every time a change is made to the file | -| date | | Date of the detection, update this every time a change is made to the file | -| author | | Author of the detection | -| type | | Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) | -| status | | Status of the detection (Production, Experimental, Deprecated) | -| data_source | | Reference to the data source that the detection is based, use the name from the data_sources/ folder | -| description | | Description of the detection | -| search | | Splunk search to be executed, this is the core of the detection. Detections can be either written against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. | -| how_to_implement | | Details on how to implement the detection | +| name | str | Name of the detection, this is the name that will be displayed in the Splunk UI | +| id | int | Unique identifier for the detection, UUID | +| version | int | Version of the detection, update this every time a change is made to the file | +| date | str | Date of the detection, update this every time a change is made to the file | +| author | str | Author of the detection | +| type | str | Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) | +| status | str | Status of the detection (Production, Experimental, Deprecated) | +| data_source | list | Reference to the data source that the detection is based, use the name from the data_sources/ folder | +| description | str | Description of the detection | +| search | str | Splunk search to be executed, this is the core of the detection. Detections can be either written against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. | +| how_to_implement | str | Details on how to implement the detection | | known_false_positives | | Details on known false positives triggered in this detection. | | references | | List of references to the MITRE ATT&CK, details of attack vector, blog posts, vulnerabilities, etc. | -| tags | | | -| analytic_story | | Name of the analytic story that the detection is part of | -| asset_type | | Which assets are monitored by this detection (Endpoint, Network, AWS Tenant, Azure Tenant, etc.) | -| confidence | | Confidence level of the detection | -| cve | | List of CVEs that are related to the detection | -| impact | | A number between 0-100 that represents the impact of the detection | -| message | | The risk message that will be displayed in the Splunk Enterprise Security | +| tags | | tags are various metadata that can be used to categorize the detection | +| analytic_story | list | Name of the analytic story that the detection is part of | +| asset_type | str | Which assets are monitored by this detection (Endpoint, Network, AWS Tenant, Azure Tenant, etc.) | +| confidence | int | Confidence level of the detection | +| cve | list | List of CVEs that are related to the detection | +| impact | int | A number between 0-100 that represents the impact of the detection | +| message | str | The risk message that will be displayed in the Splunk Enterprise Security | | mitre_attack_id | | List of MITRE ATT&CK IDs that are related to the detection | -| observable | | List of observables that are related to the detection | -| name | | Field name of the observable | -| type | | Type of the observable (User, Endpoint, File, Process Name) | -| role | | Role of the observable (Victim, Attacker) | -| product | | List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) | -| required_fields | | List of required fields that are needed to execute the detection | -| risk_score | | A number between 0-100 that represents the risk score of the detection | -| security_domain | | The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) | +| observable | list | List of observables that are related to the detection | +| name | str | Field name of the observable | +| type | str | Type of the observable (User, Endpoint, File, Process Name) | +| role | list | Role of the observable (Victim, Attacker) | +| product | list | List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) | +| required_fields | list | List of required fields that are needed to execute the detection | +| risk_score | int | A number between 0-100 that represents the risk score of the detection | +| security_domain | str | The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) | | tests | | | -| name | | Name of the test | -| attack_data | | URL to the attack data that is used to test the detection | -| data | | Data of the attack | -| source | | Source of the attack | -| sourcetype | | Sourcetype from the attack | +| name | str | Name of the test | +| attack_data | url | URL to the attack data that is used to test the detection | +| data | str | Data of the attack | +| source | str | Source of the attack | +| sourcetype | str | Sourcetype from the attack | # Elements of a analytics_story.yml: -# Your Markdown Title - -Some introductory text or description. | Key | Type | Description | |------------|--------|---------------------------------------------------------------------------------------------------| -| name | | Name of the analytic story | -| id | | Unique identifier for the analytic story, UUID | -| version | | Version of the analytic story, update this every time a change is made to the file | -| date | | Date of the analytic story | -| author | | Author of the analytic story | -| description| | Description of the analytic story | -| narrative | | Narrative of the analytic story | -| references | | List of references to the analytic story | +| name | str | Name of the analytic story | +| id | int | Unique identifier for the analytic story, UUID | +| version | int | Version of the analytic story, update this every time a change is made to the file | +| date | str | Date of the analytic story | +| author | str | Author of the analytic story | +| description| str | Description of the analytic story | +| narrative | str | Narrative of the analytic story | +| references | list | List of references to the analytic story | | tags | | | -| category | | List of categories that the analytic story is related to | -| product | | List of products that the analytic story is related to | -| usecase | | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | +| category | list | List of categories that the analytic story is related to | +| product | list | List of products that the analytic story is related to | +| usecase | str | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | More text or content can follow here. # Recommendations From 87c58cf55eb773e0bb034764375ac659840fa69c Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 4 Sep 2024 20:25:50 +0530 Subject: [PATCH 05/21] updating commmands --- README.md | 43 +++++++++++++++++++++++++++++++++---------- 1 file changed, 33 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index d1abd16f8e..81ff41d3b0 100644 --- a/README.md +++ b/README.md @@ -82,7 +82,39 @@ Follow these steps to get started with Splunk Security Content. 2. Navigate to the repository directory using `cd security_content` 3. Install contentctl using `pip install contentctl` to install the latest version of contentctl, this is a pre-requisite to validate, build and test the content like the Splunk Threat Research team -🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute to the Splunk Security Content project. +# Quick Start 🚀 + +1. Setup the environment +``` +git clone https://github.com/splunk/security_content.git +cd security_content +python3.11 -m venv .venv +source .venv/bin/activate +pip install contentctl + +``` +2. Create a new detection.yml and answer the questions + ``` + contentctl new + ``` +3. Make sure you update the detection.yml with the required fields and values. + +4. Validate your content +``` +contentctl validate +``` +5. Build an ESCU app +``` +contentctl build --enrichments +``` + +# Recommendations + +- 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. + +- In order to build an content app that specific for your organization, we strongly recommend that you start with keeping only the detections that are related to your organization and remove other yamls that are not related to your organization. This includes selecting detections, stories, macros, lookups that are used by the detection ymls. + +- If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. # Elements of a detection.yml: @@ -143,15 +175,6 @@ Here is a quick overview of the elements of a detection with an explanation | product | list | List of products that the analytic story is related to | | usecase | str | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | -More text or content can follow here. -# Recommendations - -- 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. - -- In order to build an content app that specific for your organization, we strongly recommend that you start with keeping only the detections that are related to your organization and remove other yamls that are not related to your organization. This includes selecting detections, stories, macros, lookups that are used by the detection ymls. - -- If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. - # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. From 9fcd765b19e4e27169ea27a44134d815b83a8a86 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Tue, 17 Sep 2024 14:05:44 +0530 Subject: [PATCH 06/21] updating readme for lookups --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 81ff41d3b0..2f56ab0ecf 100644 --- a/README.md +++ b/README.md @@ -97,12 +97,14 @@ pip install contentctl ``` contentctl new ``` -3. Make sure you update the detection.yml with the required fields and values. + + **NOTE** - Make sure you update the detection.yml with the required fields and values. 4. Validate your content ``` contentctl validate ``` + 5. Build an ESCU app ``` contentctl build --enrichments From d47b9675396f2c13d47e84f928a3ae892892d1b1 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Tue, 17 Sep 2024 14:10:54 +0530 Subject: [PATCH 07/21] testing --- README.md | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2f56ab0ecf..1734f2434d 100644 --- a/README.md +++ b/README.md @@ -97,7 +97,7 @@ pip install contentctl ``` contentctl new ``` - + **NOTE** - Make sure you update the detection.yml with the required fields and values. 4. Validate your content @@ -110,6 +110,10 @@ contentctl validate contentctl build --enrichments ``` +6. Test your content +Our testing framework is based on [contentctl](https://github.com/splunk/contentctl) and is quite extensive and flexible. Refer to the [contentctl documentation](https://github.com/splunk/contentctl?tab=readme-ov-file#contentctl-test) to learn more about the testing framework. + + # Recommendations - 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. @@ -118,7 +122,7 @@ contentctl build --enrichments - If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. -# Elements of a detection.yml: +# Elements of a detection yml: Here is a quick overview of the elements of a detection with an explanation | Key | Type | Description | @@ -159,8 +163,7 @@ Here is a quick overview of the elements of a detection with an explanation | source | str | Source of the attack | | sourcetype | str | Sourcetype from the attack | -# Elements of a analytics_story.yml: - +# Elements of a stories yml: | Key | Type | Description | |------------|--------|---------------------------------------------------------------------------------------------------| @@ -177,6 +180,26 @@ Here is a quick overview of the elements of a detection with an explanation | product | list | List of products that the analytic story is related to | | usecase | str | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | +# Elements of a macros yml: + +| Key | Type | Description | +|-------------|--------|---------------------------------------------------------------------------------------------------| +| definition | str | The definition of the macro, specifying the source or other configurations. | +| description | str | A description of the macro, explaining its purpose and any specific configurations required. | +| name | str | The name of the macro. | + +# Elements of a lookup yml: +🚨 NOTE - This directory must contain a lookup.csv file for file based lookups + +| Key | Type | Description | +|-----------------------|--------|-----------------------------------------------------------------------------| +| description | str | A description of the lookup, detailing its purpose and contents. | +| filename | str | The name of the CSV file that contains the lookup data. | +| name | str | The name of the lookup. | +| default_match | str | Indicates whether the default match is enabled (true or false). | +| match_type | str | The type of match to perform, e.g., WILDCARD(domain). | +| min_matches | int | The minimum number of matches required. | +| case_sensitive_match | str | Indicates whether the match is case-sensitive (true or false). | # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. From 97c9586ee3f6f2f15a1c9cba4615540825298e5f Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Tue, 17 Sep 2024 14:12:02 +0530 Subject: [PATCH 08/21] updating format --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 1734f2434d..8f28ae38e0 100644 --- a/README.md +++ b/README.md @@ -110,8 +110,7 @@ contentctl validate contentctl build --enrichments ``` -6. Test your content -Our testing framework is based on [contentctl](https://github.com/splunk/contentctl) and is quite extensive and flexible. Refer to the [contentctl documentation](https://github.com/splunk/contentctl?tab=readme-ov-file#contentctl-test) to learn more about the testing framework. +6. Test the content - Our testing framework is based on [contentctl](https://github.com/splunk/contentctl) and is extensive and flexible. Refer to the [contentctl test documentation](https://github.com/splunk/contentctl?tab=readme-ov-file#contentctl-test) to learn more about the testing framework. # Recommendations From eb585640947b0fccaa9151535cfa55ff486d47c9 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Tue, 17 Sep 2024 14:14:52 +0530 Subject: [PATCH 09/21] adding links --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8f28ae38e0..d782f55bfb 100644 --- a/README.md +++ b/README.md @@ -121,7 +121,7 @@ contentctl build --enrichments - If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. -# Elements of a detection yml: +# Elements of a [detection](https://github.com/splunk/security_content/blob/develop/detections/application/crushftp_server_side_template_injection.yml) yml: Here is a quick overview of the elements of a detection with an explanation | Key | Type | Description | @@ -162,7 +162,7 @@ Here is a quick overview of the elements of a detection with an explanation | source | str | Source of the attack | | sourcetype | str | Sourcetype from the attack | -# Elements of a stories yml: +# Elements of a [stories](https://github.com/splunk/security_content/blob/develop/stories/3cx_supply_chain_attack.yml) yml: | Key | Type | Description | |------------|--------|---------------------------------------------------------------------------------------------------| @@ -179,7 +179,7 @@ Here is a quick overview of the elements of a detection with an explanation | product | list | List of products that the analytic story is related to | | usecase | str | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | -# Elements of a macros yml: +# Elements of a [macros](https://github.com/splunk/security_content/blob/develop/macros/admon.yml) yml: | Key | Type | Description | |-------------|--------|---------------------------------------------------------------------------------------------------| @@ -187,7 +187,7 @@ Here is a quick overview of the elements of a detection with an explanation | description | str | A description of the macro, explaining its purpose and any specific configurations required. | | name | str | The name of the macro. | -# Elements of a lookup yml: +# Elements of a [lookup](https://github.com/splunk/security_content/blob/develop/lookups/3cx_ioc_domains.yml) yml: 🚨 NOTE - This directory must contain a lookup.csv file for file based lookups | Key | Type | Description | From 4f619237e1f097fa9f0775dc89846eff4123e4a6 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 18 Sep 2024 21:01:52 +0530 Subject: [PATCH 10/21] adding yaml spec --- docs/yaml-spec/detection_spec.yml | 159 ++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 docs/yaml-spec/detection_spec.yml diff --git a/docs/yaml-spec/detection_spec.yml b/docs/yaml-spec/detection_spec.yml new file mode 100644 index 0000000000..8aa8e89010 --- /dev/null +++ b/docs/yaml-spec/detection_spec.yml @@ -0,0 +1,159 @@ +name: + type: str + description: Name of the detection, this is the name that will be displayed in the Splunk UI. Naming convention is __. Ref - https://github.com/splunk/security_content/wiki/Detection-Naming-Convention + required: true +id: + type: str + description: Unique identifier for the detection, UUID + required: true +version: + type: int + description: Version of the detection, update this every time a change is made to the file + required: true +date: + type: str + description: Date of the detection, update this every time a change is made to the file + required: true +author: + type: str + description: Author of the detection + required: true +status: + type: str + description: Status of the detection + enum: [production, experimental, deprecated] + required: true +type: + type: str + description: Type of the detection + enum: [TTP, Anomaly, Baseline, Hunting, Correlation] + required: true +data_source: + type: list + description: Reference to the name from the data_sources folder. + required: false +description: + type: str + description: Description of the detection + required: true +search: + type: str + description: Splunk search to be executed. search should end with a _filter macro to filter out the false positives. + required: true +how_to_implement: + type: str + description: Details on how to implement the detection + required: true +known_false_positives: + type: str + description: Details on known false positives triggered in this detection + required: true +references: + type: list + description: List of references to the MITRE ATT&CK, details of attack vector, blog posts, vulnerabilities, etc. + required: false +tags: + type: dict + description: Tags are various metadata that can be used to categorize the detection + required: false + properties: + analytic_story: + type: list + description: Name of the analytic story that the detection is part of, use the exact name as in the stories/ folder. + required: true + asset_type: + type: list + description: Which assets are monitored by this detection + enum: ['AWS Account', 'AWS EKS Kubernetes cluster', 'AWS Federated Account', 'AWS Instance', 'Account', 'Amazon EKS Kubernetes cluster', 'Amazon EKS Kubernetes cluster Pod', 'Amazon Elastic Container Registry', 'Azure Tenant', 'Azure AKS Kubernetes cluster', 'Azure Active Directory', 'CircleCI', 'Cloud Compute Instance', 'Cloud Instance', 'DNS Servers', 'Database Server', 'Domain Server', 'EC2 Snapshot', 'Endpoint', 'GCP', 'GCP Account', 'GCP GKE EKS Kubernetes cluster', 'GCP GKE Kubernetes cluster', 'GCP Kubernetes cluster', 'GCP Storage Bucket', 'GDrive', 'GSuite', 'GitHub', 'Google Cloud Platform tenant', 'Identity', 'Infrastructure', 'Instance', 'Kubernetes', 'Network', 'O365 Tenant', 'Okta Tenant', 'Proxy', 'S3 Bucket', 'Splunk Server', 'VPN Appliance', 'Web Server', 'Web Proxy', 'Web Application','Windows'] + required: true + atomic_guid: + type: list + description: List of Atomic GUIDs from Atomic Red Team + required: false + confidence: + type: int + description: Confidence level of the detection between 1-100 + required: true + impact: + type: int + description: A number between 1-100 that represents the impact when the detection is triggered + required: true + message: + type: str + description: The risk message that will be displayed in the Splunk Enterprise Security + required: true + cve: + type: list + description: List of CVE IDs that are related to the detection + required: false + mitre_attack_id: + type: list + description: List of MITRE ATT&CK IDs that are related to the detection + required: false + observable: + type: list + description: List of observables that are related to the detection. Atleast one observable with Victim role is required. + required: true + items: + name: + type: str + description: Field name of the observable + required: true + type: + type: str + description: Type of the observable + enum: [Unknown, Hostname, IP Address, MAC Address, User Name, Email Address, URL String, File Name, File Hash, Process Name, Resource UID, Endpoint, User, Email, Uniform Resource Locator, File, Process, Geo Location, Container, Registry Key, Registry Value, Other] + required: true + role: + type: list + description: Role of the observable. Atleast one observable with Victim role is required. + enum: [Victim, Attacker] + required: true + product: + type: list + description: List of products that are related to the detection + enum: [Splunk Enterprise Security, Splunk Enterprise, Splunk Cloud] + required: true + risk_score: + type: int + description: A number between 1-100 that represents the risk score of the detection. The risk score will be calculated based on the confidence and impact. + required: true + required_fields: + type: list + description: List of required fields that are needed to execute the detection + required: true + security_domain: + type: str + description: The security domain that the detection is related to + enum: ['endpoint', 'network', 'threat', 'identity', 'access', 'audit', 'cloud'] + required: false +manual_test: + type: str + description: If the detection needs manual testing, set a message here so that contentctl will not run the test automatically. + required: false +tests: + type: list + description: List of tests for the detection + required: false + items: + name: + type: str + description: Name of the test, Example - True Positive Test + required: true + attack_data: + type: list + description: List of attack data used to test the detection + required: true + items: + data: + type: str + description: URL to the attack data, Example - https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1190/crushftp/crushftp.log + required: true + source: + type: str + description: source of the attack data in splunk + required: true + sourcetype: + type: str + description: sourcetype of the attack data extracted by the TAs in Splunk Example - crushftp:sessionlogs + required: true \ No newline at end of file From b1a94efe9c68e6bf6f2358075fd57d075cdd14a0 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 18 Sep 2024 21:09:48 +0530 Subject: [PATCH 11/21] adding stories spec --- docs/yaml-spec/stories_spec.yml | 52 +++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 docs/yaml-spec/stories_spec.yml diff --git a/docs/yaml-spec/stories_spec.yml b/docs/yaml-spec/stories_spec.yml new file mode 100644 index 0000000000..bc76ab4db6 --- /dev/null +++ b/docs/yaml-spec/stories_spec.yml @@ -0,0 +1,52 @@ +name: + type: str + description: Name of the analytic story + required: true +id: + type: str + description: Unique identifier for the analytic story, UUID + required: true +version: + type: int + description: Version of the analytic story, update this every time a change is made to the file + required: true +date: + type: str + description: Date of the analytic story + required: true +author: + type: str + description: Author of the analytic story + required: true +description: + type: str + description: Description of the analytic story + required: true +narrative: + type: str + description: Narrative of the analytic story, what this usecase is about + required: true +references: + type: list + description: List of references to the analytic story + required: false +tags: + type: dict + description: Tags are various metadata that can be used to categorize the analytic story + required: true + properties: + category: + type: list + description: List of categories that the analytic story is related to + required: true + enum: ['Abuse', 'Adversary Tactics', 'Best Practices', 'Cloud Security', 'Compliance', 'Malware', 'Uncategorized', 'Vulnerability', 'Account Compromise', 'Data Destruction', 'Lateral Movement', 'Privilege Escalation', 'Ransomware' or 'Unauthorized Software'] + product: + type: list + description: List of products that the analytic story is related to + enum: [Splunk Enterprise Security, Splunk Enterprise, Splunk Cloud] + required: true +usecase: + type: str + description: Usecase of the analytic story + enum: ['Fraud Detection', 'Compliance', 'Application Security', 'Security Monitoring', 'Advanced Threat Detection', 'Insider Threat','Other'] + required: true \ No newline at end of file From 1aedcac66e64349b92956a988cefc707e195603f Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Wed, 18 Sep 2024 21:13:07 +0530 Subject: [PATCH 12/21] update readme --- README.md | 53 ----------------------------------------------------- 1 file changed, 53 deletions(-) diff --git a/README.md b/README.md index d782f55bfb..84b13b87d4 100644 --- a/README.md +++ b/README.md @@ -123,62 +123,9 @@ contentctl build --enrichments # Elements of a [detection](https://github.com/splunk/security_content/blob/develop/detections/application/crushftp_server_side_template_injection.yml) yml: -Here is a quick overview of the elements of a detection with an explanation -| Key | Type | Description | -|-----------------------|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| name | str | Name of the detection, this is the name that will be displayed in the Splunk UI | -| id | int | Unique identifier for the detection, UUID | -| version | int | Version of the detection, update this every time a change is made to the file | -| date | str | Date of the detection, update this every time a change is made to the file | -| author | str | Author of the detection | -| type | str | Type of the detection (TTP, Anomaly, Baseline, Hunting, Correlation) | -| status | str | Status of the detection (Production, Experimental, Deprecated) | -| data_source | list | Reference to the data source that the detection is based, use the name from the data_sources/ folder | -| description | str | Description of the detection | -| search | str | Splunk search to be executed, this is the core of the detection. Detections can be either written against the sourcetype or in tstats if the data is normalized. Sourcetype based searches begin with an input macro, core search logic and end with a filter macro. The input macro is used to specify the index and sourcetype and the _filter macro is used to filter out the false positives. | -| how_to_implement | str | Details on how to implement the detection | -| known_false_positives | | Details on known false positives triggered in this detection. | -| references | | List of references to the MITRE ATT&CK, details of attack vector, blog posts, vulnerabilities, etc. | -| tags | | tags are various metadata that can be used to categorize the detection | -| analytic_story | list | Name of the analytic story that the detection is part of | -| asset_type | str | Which assets are monitored by this detection (Endpoint, Network, AWS Tenant, Azure Tenant, etc.) | -| confidence | int | Confidence level of the detection | -| cve | list | List of CVEs that are related to the detection | -| impact | int | A number between 0-100 that represents the impact of the detection | -| message | str | The risk message that will be displayed in the Splunk Enterprise Security | -| mitre_attack_id | | List of MITRE ATT&CK IDs that are related to the detection | -| observable | list | List of observables that are related to the detection | -| name | str | Field name of the observable | -| type | str | Type of the observable (User, Endpoint, File, Process Name) | -| role | list | Role of the observable (Victim, Attacker) | -| product | list | List of products that are related to the detection (Splunk Enterprise Security, Splunk Enterprise) | -| required_fields | list | List of required fields that are needed to execute the detection | -| risk_score | int | A number between 0-100 that represents the risk score of the detection | -| security_domain | str | The security domain that the detection is related to (Network, Endpoint, Cloud, etc.) | -| tests | | | -| name | str | Name of the test | -| attack_data | url | URL to the attack data that is used to test the detection | -| data | str | Data of the attack | -| source | str | Source of the attack | -| sourcetype | str | Sourcetype from the attack | # Elements of a [stories](https://github.com/splunk/security_content/blob/develop/stories/3cx_supply_chain_attack.yml) yml: -| Key | Type | Description | -|------------|--------|---------------------------------------------------------------------------------------------------| -| name | str | Name of the analytic story | -| id | int | Unique identifier for the analytic story, UUID | -| version | int | Version of the analytic story, update this every time a change is made to the file | -| date | str | Date of the analytic story | -| author | str | Author of the analytic story | -| description| str | Description of the analytic story | -| narrative | str | Narrative of the analytic story | -| references | list | List of references to the analytic story | -| tags | | | -| category | list | List of categories that the analytic story is related to | -| product | list | List of products that the analytic story is related to | -| usecase | str | Usecase of the analytic story (Advanced Persistent Threat, Cloud, Vulnerability, Malware, etc.) | - # Elements of a [macros](https://github.com/splunk/security_content/blob/develop/macros/admon.yml) yml: | Key | Type | Description | From a615f63117b5d0976677e561c8f5b2e6433d7d5f Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 18:38:29 +0530 Subject: [PATCH 13/21] updating readme --- README.md | 28 ++++-------------- docs/yaml-spec/detection_spec.yml | 1 + docs/yaml-spec/lookups_spec.yml | 48 +++++++++++++++++++++++++++++++ docs/yaml-spec/macros_spec.yml | 12 ++++++++ docs/yaml-spec/stories_spec.yml | 1 + 5 files changed, 67 insertions(+), 23 deletions(-) create mode 100644 docs/yaml-spec/lookups_spec.yml create mode 100644 docs/yaml-spec/macros_spec.yml diff --git a/README.md b/README.md index 84b13b87d4..ffaadd4931 100644 --- a/README.md +++ b/README.md @@ -121,31 +121,13 @@ contentctl build --enrichments - If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. -# Elements of a [detection](https://github.com/splunk/security_content/blob/develop/detections/application/crushftp_server_side_template_injection.yml) yml: - - -# Elements of a [stories](https://github.com/splunk/security_content/blob/develop/stories/3cx_supply_chain_attack.yml) yml: - -# Elements of a [macros](https://github.com/splunk/security_content/blob/develop/macros/admon.yml) yml: - -| Key | Type | Description | -|-------------|--------|---------------------------------------------------------------------------------------------------| -| definition | str | The definition of the macro, specifying the source or other configurations. | -| description | str | A description of the macro, explaining its purpose and any specific configurations required. | -| name | str | The name of the macro. | - -# Elements of a [lookup](https://github.com/splunk/security_content/blob/develop/lookups/3cx_ioc_domains.yml) yml: +# YAML Specs +- [detection](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/detection_spec.yml) +- [stories](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/stories_spec.yml): +- [macros](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/macros_spec.yml) +- [lookup](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/lookups_spec.yml) 🚨 NOTE - This directory must contain a lookup.csv file for file based lookups -| Key | Type | Description | -|-----------------------|--------|-----------------------------------------------------------------------------| -| description | str | A description of the lookup, detailing its purpose and contents. | -| filename | str | The name of the CSV file that contains the lookup data. | -| name | str | The name of the lookup. | -| default_match | str | Indicates whether the default match is enabled (true or false). | -| match_type | str | The type of match to perform, e.g., WILDCARD(domain). | -| min_matches | int | The minimum number of matches required. | -| case_sensitive_match | str | Indicates whether the match is case-sensitive (true or false). | # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. diff --git a/docs/yaml-spec/detection_spec.yml b/docs/yaml-spec/detection_spec.yml index 8aa8e89010..b94dd282b3 100644 --- a/docs/yaml-spec/detection_spec.yml +++ b/docs/yaml-spec/detection_spec.yml @@ -1,3 +1,4 @@ +#### Spec for detection yaml file name: type: str description: Name of the detection, this is the name that will be displayed in the Splunk UI. Naming convention is __. Ref - https://github.com/splunk/security_content/wiki/Detection-Naming-Convention diff --git a/docs/yaml-spec/lookups_spec.yml b/docs/yaml-spec/lookups_spec.yml new file mode 100644 index 0000000000..1c6ac207ea --- /dev/null +++ b/docs/yaml-spec/lookups_spec.yml @@ -0,0 +1,48 @@ +### Spec for File based lookups +name: + type: str + description: Name of the lookup + required: true +description: + type: str + description: Description of the lookup + required: true +filename: + type: str + description: Filename of the CSV file associated with the lookup + required: true +default_match: + type: str + description: Default match setting for the lookup + required: false +match_type: + type: str + description: Type of match used in the lookup + required: false +min_matches: + type: int + description: Minimum number of matches required + required: false +case_sensitive_match: + type: str + description: Case sensitivity setting for the match + required: false + + + #### Spec for Collections based lookups: +name: + type: str + description: Name of the lookup + required: true +collection: + type: str + description: Name of the collection associated with the lookup + required: true +description: + type: str + description: Description of the lookup + required: true +fields_list: + type: list + description: List of fields in the lookup + required: true \ No newline at end of file diff --git a/docs/yaml-spec/macros_spec.yml b/docs/yaml-spec/macros_spec.yml new file mode 100644 index 0000000000..c0bdd0e619 --- /dev/null +++ b/docs/yaml-spec/macros_spec.yml @@ -0,0 +1,12 @@ +name: + type: str + description: Name of the macro + required: true +definition: + type: str + description: Definition of the macro, replace with configurations for your Splunk Environment + required: true +description: + type: str + description: Description of the macro + required: true \ No newline at end of file diff --git a/docs/yaml-spec/stories_spec.yml b/docs/yaml-spec/stories_spec.yml index bc76ab4db6..ad3bba6a26 100644 --- a/docs/yaml-spec/stories_spec.yml +++ b/docs/yaml-spec/stories_spec.yml @@ -1,3 +1,4 @@ +#### Spec for detection yaml file name: type: str description: Name of the analytic story From d77947e8a0bca3e33f52092a95541b72a437d0db Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 18:44:57 +0530 Subject: [PATCH 14/21] updating logo --- README.md | 20 ++++++++++++-------- docs/static/escu_app_logo.png | Bin 0 -> 19492 bytes 2 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 docs/static/escu_app_logo.png diff --git a/README.md b/README.md index ffaadd4931..58ecf2e445 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ # Splunk Security Content -![security_content](docs/static/logo.png) +![security_content](docs/static/escu_app_logo.png) ===== Welcome to the Splunk Security Content @@ -56,12 +56,6 @@ The key tool that drives our content development is [contentctl](https://github. To learn more about contentctl and its capabilities, please visit the [contentctl repository](https://github.com/splunk/contentctl). -# MITRE ATT&CK ⚔️ -### Detection Coverage -To view an up-to-date detection coverage map for all the content tagged with MITRE techniques visit: [https://mitremap.splunkresearch.com/](https://mitremap.splunkresearch.com/) under the **Detection Coverage** layer. Below is a snapshot in time of what technique we currently have some detection coverage for. - -![](docs/mitre-map/coverage.png) - # Content Parts 🧩 * [detections/](detections/): Contains all detection searches to-date and growing. @@ -104,6 +98,7 @@ pip install contentctl ``` contentctl validate ``` +**NOTE** - The contentctl validate command ensures that all YAML files adhere to the defined specifications and are up-to-date. It checks for required fields, correct data types, and overall consistency, helping maintain the integrity and quality of the content. 5. Build an ESCU app ``` @@ -121,13 +116,22 @@ contentctl build --enrichments - If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. +- We recommend that you follow the errors produced by the `contentctl` tool while developing this content. The errors are descriptive enough to guide you in getting the right values. If you need help, please open a GitHub issue in the `contentctl` repository. + # YAML Specs + +YAML specs define the structure and required fields for various YAML configuration files used in the project. These specifications ensure consistency and validation across different types of YAML files, such as macros, lookups, and analytic stories. Each spec outlines the expected data types, descriptions, and whether the fields are mandatory, providing a clear schema for developers to follow. + - [detection](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/detection_spec.yml) - [stories](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/stories_spec.yml): - [macros](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/macros_spec.yml) -- [lookup](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/lookups_spec.yml) +- [lookups](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/lookups_spec.yml) + 🚨 NOTE - This directory must contain a lookup.csv file for file based lookups +# MITRE ATT&CK ⚔️ +### Detection Coverage +To view an up-to-date detection coverage map for all the content tagged with MITRE techniques visit: [https://mitremap.splunkresearch.com/](https://mitremap.splunkresearch.com/) under the **Detection Coverage** layer. Below is a snapshot in time of what technique we currently have some detection coverage for. # Contribution 🥰 We welcome feedback and contributions from the community! Please see our [contributing to the project](./.github/CONTRIBUTING.md) for more information on how to get involved. diff --git a/docs/static/escu_app_logo.png b/docs/static/escu_app_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c78333b42d6df8d197f83961a8ed695a05e33c23 GIT binary patch literal 19492 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 KMNUMnLSTYi&wX3~ literal 0 HcmV?d00001 From 5a1044097a8796243524809be4b9bf3e131efd0d Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 18:49:09 +0530 Subject: [PATCH 15/21] udpating formatting --- README.md | 44 +++++++++++++++++++------------------------- 1 file changed, 19 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 58ecf2e445..d43c642134 100644 --- a/README.md +++ b/README.md @@ -27,47 +27,28 @@ This project gives you access to our repository of Analytic Stories, security gu **Note:** We have sister projects that enable us to build the industry's best security content. These projects are the Splunk Attack Range, an attack simulation lab built around Splunk, and Contentctl, the tool that enables us to build, test, and package our content for distribution. +# Tools 🧰 + - [Splunk Attack Range](https://github.com/splunk/attack_range): An attack simulation lab built around Splunk. - [Contentctl](https://github.com/splunk/contentctl): The tool that enables us to build, test, and package our content for distribution. - [Attack data](https://github.com/splunk/attack_data): The is a collection of attack data that is used to test our content. +- [Atomic Red Team](https://github.com/redcanaryco/atomic-red-team): Atomic Red Team™ is a library of tests mapped to the MITRE ATT&CK® framework. Security teams can use Atomic Red Team to quickly, portably, and reproducibly test their environments. # Get Content🛡 The latest Splunk Security Content can be obtained via: -### 🌐 [Website](https://research.splunk.com/) +#### 🌐 [Website](https://research.splunk.com/) Best way to discover and access our content is by using the [research.splunk.com](https://research.splunk.com/) website. -### 🖥️ [Splunk Enterprise Security (ES) Content Update](https://docs.splunk.com/Documentation/ES/latest/Admin/Usecasecontentlibrary?#Update_the_Analytic_Stories) +#### 🖥️ [Splunk Enterprise Security (ES) Content Update](https://docs.splunk.com/Documentation/ES/latest/Admin/Usecasecontentlibrary?#Update_the_Analytic_Stories) Splunk security content ships as part of ESCU directly into, if you are an ES user, good news, you already have it! -### 📦 [ESCU App](https://github.com/splunk/security_content/releases) +#### 📦 [ESCU App](https://github.com/splunk/security_content/releases) To manually download the latest release of Splunk Security Content (named DA-ESS-ContentUpdate.spl), you can visit the [splunkbase](https://splunkbase.splunk.com/app/3449/) page or the [release page](https://github.com/splunk/security_content/releases) on GitHub. -# Tools 🧰 -The key tool that drives our content development is [contentctl](https://github.com/splunk/contentctl). Contentctl offers the following features: - -- Creating new detections -- Validating the correctness of all necessary components for detections -- Testing detections -- Generating deployable apps from detections - -To learn more about contentctl and its capabilities, please visit the [contentctl repository](https://github.com/splunk/contentctl). - -# Content Parts 🧩 - -* [detections/](detections/): Contains all detection searches to-date and growing. -* [stories/](stories/): All Analytic Stories that are group detections or also known as Use Cases -* [deployments/](deployments/): Configuration for the schedule and alert action for all content -* [playbooks/](playbooks/): Incident Response Playbooks/Workflow for responding to a specific Use Case or Threat. -* [baselines/](baselines/): Searches that must be executed before a detection runs. It is specifically useful for collecting data on a system before running your detection on the collected data. -* [investigations/](investigations/): Investigations to further analyze the output from detections. For more information, you can refer to the [Splunk Enterprise Security documentation on timelines](https://docs.splunk.com/Documentation/ES/7.3.0/User/Timelines). -* [macros/](macros/): Implements Splunk’s search macros, shortcuts to commonly used search patterns like sysmon source type. More on how macros are used to customize content below. -* [lookups/](lookups/): Implements Splunk’s lookup, usually to provide a list of static values like commonly used ransomware extensions. -* [data_sources/](data_sources/): Defines the data sources, the necessary TA or App to collect them and the fields provided that can be used by the detections. - # Getting Started 🚀 Follow these steps to get started with Splunk Security Content. @@ -129,6 +110,19 @@ YAML specs define the structure and required fields for various YAML configurati 🚨 NOTE - This directory must contain a lookup.csv file for file based lookups +# Content Parts 🧩 + +* [detections/](detections/): Contains all detection searches to-date and growing. +* [stories/](stories/): All Analytic Stories that are group detections or also known as Use Cases +* [deployments/](deployments/): Configuration for the schedule and alert action for all content +* [playbooks/](playbooks/): Incident Response Playbooks/Workflow for responding to a specific Use Case or Threat. +* [baselines/](baselines/): Searches that must be executed before a detection runs. It is specifically useful for collecting data on a system before running your detection on the collected data. +* [investigations/](investigations/): Investigations to further analyze the output from detections. For more information, you can refer to the [Splunk Enterprise Security documentation on timelines](https://docs.splunk.com/Documentation/ES/7.3.0/User/Timelines). +* [macros/](macros/): Implements Splunk’s search macros, shortcuts to commonly used search patterns like sysmon source type. More on how macros are used to customize content below. +* [lookups/](lookups/): Implements Splunk’s lookup, usually to provide a list of static values like commonly used ransomware extensions. +* [data_sources/](data_sources/): Defines the data sources, the necessary TA or App to collect them and the fields provided that can be used by the detections. + + # MITRE ATT&CK ⚔️ ### Detection Coverage To view an up-to-date detection coverage map for all the content tagged with MITRE techniques visit: [https://mitremap.splunkresearch.com/](https://mitremap.splunkresearch.com/) under the **Detection Coverage** layer. Below is a snapshot in time of what technique we currently have some detection coverage for. From 0c2a7e193a9a1f9ec7952c428ac959fca07cd540 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 18:54:51 +0530 Subject: [PATCH 16/21] sb --- README.md | 2 +- docs/static/escu_sb.png | Bin 0 -> 41334 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/static/escu_sb.png diff --git a/README.md b/README.md index d43c642134..d598d1eced 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ # Splunk Security Content -![security_content](docs/static/escu_app_logo.png) +![security_content](docs/static/escu_sb.png) ===== Welcome to the Splunk Security Content diff --git a/docs/static/escu_sb.png b/docs/static/escu_sb.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa6481519c0c368f4484a72ca8bd34619bff3ef GIT binary patch literal 41334 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 literal 0 HcmV?d00001 From ab7310fd6e98cbf8ddc190e3b943ce6ef2f790e7 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 19:00:23 +0530 Subject: [PATCH 17/21] updating links --- README.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index d598d1eced..9a09d5a2b4 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Splunk security content ships as part of ESCU directly into, if you are an ES us To manually download the latest release of Splunk Security Content (named DA-ESS-ContentUpdate.spl), you can visit the [splunkbase](https://splunkbase.splunk.com/app/3449/) page or the [release page](https://github.com/splunk/security_content/releases) on GitHub. -# Getting Started 🚀 +# Getting Started 🛠️ Follow these steps to get started with Splunk Security Content. @@ -68,7 +68,7 @@ source .venv/bin/activate pip install contentctl ``` -2. Create a new detection.yml and answer the questions +2. Create a new **detection.yml** and answer the questions ``` contentctl new ``` @@ -81,7 +81,7 @@ contentctl validate ``` **NOTE** - The contentctl validate command ensures that all YAML files adhere to the defined specifications and are up-to-date. It checks for required fields, correct data types, and overall consistency, helping maintain the integrity and quality of the content. -5. Build an ESCU app +5. Build an ESCU app with enrichments from Atomic Red Team and Mitre CTI repositories ``` contentctl build --enrichments ``` @@ -89,7 +89,7 @@ contentctl build --enrichments 6. Test the content - Our testing framework is based on [contentctl](https://github.com/splunk/contentctl) and is extensive and flexible. Refer to the [contentctl test documentation](https://github.com/splunk/contentctl?tab=readme-ov-file#contentctl-test) to learn more about the testing framework. -# Recommendations +# Recommendations 💡 - 🚨 NOTE: If you are just getting started with managing your Splunk detection as code, we recommend that you keep the YAML structure of the detections as close as possible to the original structure of the detections. This will make it easier to manage your detections and will also make it easier to contribute back to the community by creating a pull request to the Splunk Security Content project. @@ -97,9 +97,10 @@ contentctl build --enrichments - If your detections are using macros and lookups, please make sure that you have the same macros and lookups in those directories.. This will ensure that the content app is self-contained and does not rely on external files. -- We recommend that you follow the errors produced by the `contentctl` tool while developing this content. The errors are descriptive enough to guide you in getting the right values. If you need help, please open a GitHub issue in the `contentctl` repository. +- We recommend that you follow the errors produced by the `contentctl` tool while developing this content. The errors are descriptive enough to guide you in getting the right values. If you need help, please open a GitHub issue in the `contentctl` repository or refer to the [yaml-spec](docs/yaml-spec) to check out the list of allowed values -# YAML Specs + +# YAML Specs 📄 YAML specs define the structure and required fields for various YAML configuration files used in the project. These specifications ensure consistency and validation across different types of YAML files, such as macros, lookups, and analytic stories. Each spec outlines the expected data types, descriptions, and whether the fields are mandatory, providing a clear schema for developers to follow. From b35ca7fd8e0cf67f8a78deaaad8e2d1a8dbb299c Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 19:03:55 +0530 Subject: [PATCH 18/21] udpating formatting --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index 9a09d5a2b4..f8278421eb 100644 --- a/README.md +++ b/README.md @@ -105,12 +105,10 @@ contentctl build --enrichments YAML specs define the structure and required fields for various YAML configuration files used in the project. These specifications ensure consistency and validation across different types of YAML files, such as macros, lookups, and analytic stories. Each spec outlines the expected data types, descriptions, and whether the fields are mandatory, providing a clear schema for developers to follow. - [detection](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/detection_spec.yml) -- [stories](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/stories_spec.yml): +- [stories](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/stories_spec.yml) - [macros](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/macros_spec.yml) - [lookups](https://github.com/splunk/security_content/blob/develop/docs/yaml-spec/lookups_spec.yml) -🚨 NOTE - This directory must contain a lookup.csv file for file based lookups - # Content Parts 🧩 * [detections/](detections/): Contains all detection searches to-date and growing. From b6fdea3c9804ff4f7539de8cf789c29e613df3d7 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 19:14:40 +0530 Subject: [PATCH 19/21] descirption --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f8278421eb..86fa2a1810 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ This project gives you access to our repository of Analytic Stories, security gu # Tools 🧰 -- [Splunk Attack Range](https://github.com/splunk/attack_range): An attack simulation lab built around Splunk. +- [Splunk Attack Range](https://github.com/splunk/attack_range): The Splunk Attack Range is an open-source project maintained by the Splunk Threat Research Team. It builds instrumented cloud (AWS, Azure) and local environments (Virtualbox), simulates attacks, and forwards the data into a Splunk instance. This environment can then be used to develop and test the effectiveness of detections. - [Contentctl](https://github.com/splunk/contentctl): The tool that enables us to build, test, and package our content for distribution. - [Attack data](https://github.com/splunk/attack_data): The is a collection of attack data that is used to test our content. - [Atomic Red Team](https://github.com/redcanaryco/atomic-red-team): Atomic Red Team™ is a library of tests mapped to the MITRE ATT&CK® framework. Security teams can use Atomic Red Team to quickly, portably, and reproducibly test their environments. From 2179b50fa88991edbfcc2871175d705f30dba355 Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 19:15:27 +0530 Subject: [PATCH 20/21] note --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 86fa2a1810..b5a7e28537 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,8 @@ pip install contentctl contentctl new ``` - **NOTE** - Make sure you update the detection.yml with the required fields and values. + +**NOTE** - Make sure you update the detection.yml with the required fields and values. If you need help, please refer to the [yaml-spec](docs/yaml-spec) to check out the list of allowed values 4. Validate your content ``` From b3482ce17fa4c2ad16535d5e86fc99626152db2b Mon Sep 17 00:00:00 2001 From: Bhavin Patel Date: Mon, 30 Sep 2024 21:01:08 +0530 Subject: [PATCH 21/21] new image --- docs/static/escu_sb.png | Bin 41334 -> 125894 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/static/escu_sb.png b/docs/static/escu_sb.png index 9aa6481519c0c368f4484a72ca8bd34619bff3ef..ee2578df2cd5714e249536a526e65bba75b7ee90 100644 GIT binary patch literal 125894 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

Orz=Cz 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 OKa!%dpmJfofd3B@y2W$= literal 41334 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