Skip to content

Commit 8d8fa34

Browse files
authored
Merge branch 'main' into DOCS-811
2 parents b5488ec + 3bd0ece commit 8d8fa34

File tree

30 files changed

+203
-60
lines changed

30 files changed

+203
-60
lines changed

blog-service/2024/12-31.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -425,10 +425,6 @@ We're excited to announce that when you create a role, you can select **Index Ac
425425

426426
This feature was [previously only available to participants in our beta program](/release-notes-service/2023/12/31/#october-27-2023-manage-account). It is now available for general use.
427427

428-
:::note
429-
These changes are rolling out across deployments incrementally and will be available on all deployments by March 14, 2025.
430-
:::
431-
432428
[Learn more](/docs/manage/users-roles/roles/create-manage-roles/#create-a-role).
433429

434430
### October 14, 2024 (Collection)

docs/alerts/scheduled-searches/generate-cse-signals.md

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ For a more detailed description of the options you can configure for a scheduled
1515

1616
## Requirements for the search query
1717

18+
When you [create a scheduled search](/docs/alerts/scheduled-searches/schedule-search/) to generate signals in Cloud SIEM, you start by creating a search query.
19+
1820
This section describes the requirements for your scheduled search, which include a minimum set of fields to be returned, and renaming message fields as necessary to match attribute names in the selected Cloud SIEM record type schema.  
1921

2022
### Required fields
@@ -42,7 +44,6 @@ enable signal generation:
4244
If the `stage` field contains a Tactic that isn't in the MITRE ATT&CK framework, a signal will not be generated, but a record will be. 
4345
:::
4446
* At least one entity field:
45-
4647
* `device_ip`
4748
* `device_mac`
4849
* `device_natIp`
@@ -56,16 +57,35 @@ enable signal generation:
5657
* `srcDevice_ip`
5758
* `srcDevice_mac`
5859
* `srcDevice_natIp`
59-
* `user_username`  
60+
* `user_username`
6061

6162
### Renaming message fields
6263

6364
When you configure a Scheduled Search to create Cloud SIEM signals, you are prompted to select a [Cloud SIEM record type](/docs/cse/schema/cse-record-types/). The fields returned by your search must match an attribute in the record type you select. A field whose name does not match a Cloud SIEM attribute will not be populated in the record created from the Schedule Search results. For more about Cloud SIEM attribute names, see [Attributes You Can Map to Records](/docs/cse/schema/attributes-map-to-records/).
6465

66+
### Example
67+
68+
Let's suppose that `user_username` is the entity field we want to use, and its value needs to be mapped to `actor.email`. Then you need to add the following line to the query: `actor.email as user_username`.
69+
70+
And because the final output of this query is an aggregate, and Cloud SIEM signals expect `normalizedfield`, `stage`, and `entity`, we need need to add those in the `count` expression.
71+
72+
This is how the final query might look:
73+
74+
```txt
75+
((_index=sec_record_* objectType=*)
76+
AND _sourcename = "Google Apps Audit Event")
77+
AND _sourcecategory = "GoogleWorkspace/Groups"
78+
| 5 as normalizedseverity
79+
| "Initial Access" as stage
80+
| json auto
81+
| actor.email as user_username
82+
| count by events.name, events.type, actor.email, event.parameters.user_email, event.parameters.group_email, user_username, stage, normalizedseverity
83+
```
84+
6585
## Scheduling the search
6686

6787
1. After creating and saving your search, click the save icon.<br/><img src={useBaseUrl('img/alerts/save-as.png')} alt="Save the search" style={{border: '1px solid gray'}} width="800"/>
68-
1. The **Save Item** popup appears.<br/><img src={useBaseUrl('img/alerts/save-item.png')} alt="Save as scheduled search" width="500"/>
88+
1. The **Save Item** popup appears.<br/><img src={useBaseUrl('img/alerts/save-item.png')} alt="Save as scheduled search" style={{border: '1px solid gray'}} width="500"/>
6989
:::note
7090
The name of your scheduled search will appear as the signal name in Cloud SIEM.
7191
:::

docs/contributing/remove-doc.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
22
id: remove-doc
3-
title: Remove a Doc
4-
description: Learn how to properly remove a Sumo Logic doc.
3+
title: Move or Remove a Doc
4+
description: Learn how to properly move or remove a Sumo Logic doc.
55
---
66

77
import useBaseUrl from '@docusaurus/useBaseUrl';
88

9-
When you delete a doc, its URL is also deleted. Visiting the old URL will return a `404 - Page Not Found` error, which negatively impacts customer experience and can damage our SEO.
9+
When you move a doc or remove it altogether, that deletes its URL. Visiting the old URL will return a `404 - Page Not Found` error, which negatively impacts customer experience and can damage our SEO.
1010

1111
To prevent this, create a 301 redirect. Follow these steps to ensure a smooth transition and maintain the health of our docs site.
1212

@@ -31,11 +31,12 @@ As an example, let's say there are two docs called **Nginx App** and **Nginx (Le
3131
Ensure any internal links pointing to the deleted doc are updated to the new URL.
3232

3333
1. In your GitHub authoring tool, run a search for the URL you're removing. For example, if the legacy URL appears in other documents, replace all instances with the new URL.<br/><img src={useBaseUrl('img/contributing/old-url.png')} alt="Screenshot of a 'Find All' search for the URL to be removed" />
34-
1. Check with a Sumo Logic subject matter expert to confirm that you can replace all with the new URL.
35-
36-
:::warning
37-
Never do a "Find All > Replace All", as this can break unrelated items like image paths. Replace each URL on a one-by-one basis.
38-
:::
34+
:::warning
35+
Never do a Find All > Replace All, as this can break unrelated items like image paths. Replace each URL on a one-by-one basis.
36+
:::
37+
1. If applicable:
38+
* Remove from its parent index.md hub page.
39+
* Remove from [Product List](/docs/integrations/product-list/).
3940

4041
## Step 3: Delete the doc file
4142

docs/cse/rules/cse-rules-syntax.md

Lines changed: 39 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -626,7 +626,7 @@ The following expression returns "10.10.1.0":
626626

627627
### hasThreatMatch
628628

629-
The `hasThreatMatch` Cloud SIEM rules function matches incoming records in Cloud SIEM to [threat intelligence indicators](/docs/security/threat-intelligence/threat-indicators-in-cloud-siem/#hasthreatmatch-cloud-siem-rules-language-function). It can also match values in [custom threat intelligence sources in Cloud SIEM](/docs/cse/administration/create-custom-threat-intel-source/).
629+
Use the `hasThreatMatch` Cloud SIEM rules function to match incoming records in Cloud SIEM to [threat intelligence sources](/docs/security/threat-intelligence/about-threat-intelligence/). The function uses all sources in the **Threat Intelligence** tab, unless you specify a specific source. `hasThreatMatch` can also match values in [custom threat intelligence sources in Cloud SIEM](/docs/cse/administration/create-custom-threat-intel-source/).
630630

631631
When an entity is processed by a rule using the `hasThreatMatch` function and is a match, the entity is associated with a known indicator that has a threat type attribute. The entity can be associated with either `threatType` (in normalized JSON format and CSV format), or `indicator_types` (in STIX format).
632632

@@ -635,46 +635,31 @@ When an entity is processed by a rule using the `hasThreatMatch` function and is
635635
`hasThreatMatch([<fields>], <filters>, <indicators>)`
636636

637637
Parameters:
638-
* `<fields>` is a list of comma-separated [field names](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/schema/full_schema.md). At least one field name is required.
639-
* `<filters>` is a logical expression using [indicator attributes](/docs/security/threat-intelligence/upload-formats/#normalized-json-format). Allowed in the filtering are parentheses `()`; `OR` and `AND` boolean operators; and comparison operators `=`, `<`, `>`, `=<`, `=>`, `!=`. <br/>You can filter on the following indicator attributes:
640-
* `actors`
641-
* `confidence`
642-
* `id`
643-
* `indicator`
644-
* `killChain`
645-
* `source`
646-
* `threatType`
647-
* `type`
648-
* `validFrom`
649-
* `validUntil`
650-
* `<indicators>` is an optional case insensitive option that describes how indicators should be matched with regard to their validity. Accepted values are:
638+
* **`<fields>`**. A list of comma-separated [field names](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/schema/full_schema.md). At least one field name is required.
639+
* **`<filters>`**. A logical expression using [indicator attributes](/docs/security/threat-intelligence/upload-formats/#normalized-json-format). Allowed in the filtering are parentheses `()`; `OR` and `AND` boolean operators; and comparison operators `=`, `<`, `>`, `=<`, `=>`, `!=`. <br/>You can filter on the following indicator attributes:
640+
* `actors`. An identified threat actor such as an individual, organization, or group.
641+
* `confidence` Confidence that the data represents a valid threat, where 100 is highest. Malicious confidence scores from different sources are normalized and mapped to a 0-100 numerical value.
642+
* `id`. ID of the indicator.
643+
* `indicator`. Value of the indicator, such as an IP address, file name, email address, etc.
644+
* `killChain`. The various phases an attacker may undertake to achieve their objectives (for example, `reconnaissance`, `weaponization`, `delivery`, `exploitation`, `installation`, `command-and-control`, `actions-on-objectives`).
645+
* `source`. The source in the Sumo Logic datastore displayed in the **Threat Intelligence** tab.
646+
* `threatType`. The threat type of the indicator (for example, `anomalous-activity`, `anonymization`, `benign`, `compromised`, `malicious-activity`, `attribution`, `unknown`).
647+
* `type`. The indicator type (for example, `ipv4-addr`, `domain-name`, `'file:hashes`, etc.)
648+
* `validFrom`. Beginning time this indicator is valid.
649+
* `validUntil`. Ending time this indicator is valid.
650+
* **`<indicators>`**. An optional case insensitive option that describes how indicators should be matched with regard to their validity. Accepted values are:
651651
* `active_indicators`. Match active indicators only (default).
652652
* `expired_indicators`. Match expired indicators only.
653653
* `all_indicators`. Match all indicators.
654654

655-
**Examples**
656-
657-
* `hasThreatMatch([srcDevice_ip])`
658-
* `hasThreatMatch([srcDevice_ip, dstDevice_ip])`
659-
* `hasThreatMatch([srcDevice_ip], type="ipv4-addr")`
660-
* `hasThreatMatch([srcDevice_ip], confidence > 50)`
661-
* `hasThreatMatch([srcDevice_ip], confidence > 50 AND source="TAXII2Source")`
662-
* `hasThreatMatch([srcDevice_ip], source="s1" OR (source="s2" confidence > 50))`
663-
* `hasThreatMatch([srcDevice_ip], expired_indicators)`
664-
* `hasThreatMatch([srcDevice_ip], confidence > 50, all_indicators)`
665-
666655
#### Best practice
667656

668657
As a best practice, always include filtering to narrow your match to just the types desired (that is, `type=`). This will ensure that your match expressions are not overly broad.
669658

670-
For example:
671-
* `hasThreatMatch([dstDevice_ip], confidence > 1 AND (type="ipv4-addr" OR type="ipv6-addr"))`
672-
* `hasThreatMatch([file_hash_imphash, file_hash_md5, file_hash_pehash, file_hash_ssdeep, file_hash_sha1, file_hash_sha256], confidence > 1 AND type="file:hashes")`
673-
* `hasThreatMatch([http_url], confidence > 1 AND type="url")`
674-
* `hasThreatMatch([dstDevice_ip, srcDevice_ip], (confidence >1 AND confidence <50) AND (type='ipv4-addr' OR type='ipv6-addr'))`
675-
676659
Following are the standard indicator types you can filter on:
677-
* `file:hashes`. File hash. (If you want to add the hash algorithm, enter `file:hashes.<HASH-TYPE>`. For example, `[file:hashes.MD5 = '5d41402abc4b2a76b9719d911017c592']` or `[file:hashes.'SHA-256' = '50d858e0985ecc7f60418aaf0cc5ab587f42c2570a884095a9e8ccacd0f6545c']`.)
660+
* `domain-name`. Domain.
661+
* `email-addr`. Email.
662+
* `file:hashes`. File hash.
678663
* `file`. File name.
679664
* `ipv4-addr`. IPv4 IP address.
680665
* `ipv6-addr`. IPv6 IP address.
@@ -685,6 +670,28 @@ Following are the standard indicator types you can filter on:
685670

686671
For more information about indicator types, see [Upload Formats for Threat Intelligence Indicators](/docs/security/threat-intelligence/upload-formats).
687672

673+
**Examples**
674+
675+
:::tip
676+
For standard rules that use the `hasThreatMatch` function, refer to the [Rules page in the Cloud SIEM Content Catalog](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/rules/README.md) and search for rules with "Threat Intel" in the name. To see examples of how these rules use `hasThreatMatch`, open and view the rules in Cloud SIEM.
677+
:::
678+
679+
* `hasThreatMatch([srcDevice_ip], confidence > 1 AND (type='ipv4-addr' OR type='ipv6-addr'))`
680+
* `hasThreatMatch([device_ip], source="unit_42" AND confidence > 50) AND accountId="testing"`
681+
* `hasThreatMatch([device_hostname], confidence > 1 AND (type='domain-name' OR type='url'))`
682+
* `hasThreatMatch([dstDevice_hostname], confidence > 1 AND (type='domain-name' OR type='url'))`
683+
* `hasThreatMatch([file_hash_md5], confidence > 1 AND type='file:hashes.MD5')`
684+
* `hasThreatMatch([file_hash_sha1], confidence > 1 AND type="file:hashes.'SHA-1'")`
685+
* `hasThreatMatch([file_hash_sha256], confidence > 1 AND type="file:hashes.'SHA-256'")`
686+
* `hasThreatMatch([file_hash_ssdeep], confidence > 1 AND type='file:hashes.ssdeep')`
687+
* `hasThreatMatch([http_url_rootDomain], confidence > 1 AND (type='domain-name' OR type='url'))`
688+
* `hasThreatMatch([user_email,targetUser_email], confidence > 1 AND source = "s_global_feed_1")`
689+
690+
You can exclude matches from allowlists such as [standard match lists](/docs/cse/match-lists-suppressed-lists/standard-match-lists/#standard-match-lists). For example:
691+
```text
692+
hasThreatMatch([dstDevice_ip], confidence > 74 AND (type='ipv4-addr' OR type='ipv6-addr')) AND NOT (array_contains(listMatches, 'business_asns') OR array_contains(listMatches, 'business_domains') OR array_contains(listMatches, 'business_hostnames') OR array_contains(listMatches, 'business_ips') OR array_contains(listMatches, 'sandbox_ips') OR array_contains(listMatches, 'verified_domains') OR array_contains(listMatches, 'verified_hostnames') OR array_contains(listMatches, 'verified_ips'))
693+
```
694+
688695
### haversine
689696

690697
Returns the distance between latitude and longitude values of two coordinates in kilometers.

docs/cse/sensors/network-sensor-end-of-life.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,5 @@ If you have any questions, please don't hesitate to reach out to your Sumo Logic
2424
| :-- | :-- | :-- |
2525
| End-of-life announcement | The date this feature is announced as end-of-life. | November 8, 2024 |
2626
| End of software release | The last date that Sumo Logic may release any final software maintenance releases or bug fixes. After this date, Sumo Logic will no longer develop, repair, maintain, or test product software. | November 8, 2024 |
27-
| Last date of support | The last date to receive applicable support for the feature as entitled by active support contracts or by applicable warrant terms and conditIons. After this date, all support services for this feature are unavailable and the feature becomes obsolete. | April 30, 2025 |
27+
| Last date of support | The last date to receive applicable support for the feature as entitled by active support contracts or by applicable warrant terms and conditIons. After this date, all support services for this feature are unavailable and the feature becomes obsolete. | TBD |
2828

docs/integrations/saas-cloud/sumo-collection.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,4 +200,4 @@ import AppUpdate from '../../reuse/apps/app-update.md';
200200

201201
import AppUninstall from '../../reuse/apps/app-uninstall.md';
202202

203-
<AppUninstall/>
203+
<AppUninstall/>

docs/platform-services/automation-service/app-central/integrations/atlassian-jira-cloud.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ Updated: March 20 , 2025***
1212

1313
Jira is a proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management.
1414

15+
:::note
16+
This integration uses the [Jira REST API v3](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#version).
17+
:::
18+
1519
## Actions
1620

1721
* **Add Comment to Issue** *(Notification)* - Add a comment to the specified issue.
@@ -73,4 +77,4 @@ Ticketing System
7377

7478
## Change Log
7579

76-
* March 20, 2025 - First upload
80+
* March 20, 2025 - First upload

docs/platform-services/automation-service/app-central/integrations/atlassian-jira-v2.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ Updated: September 2 , 2024***
1212

1313
Jira is a proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management.
1414

15+
:::note
16+
This integration uses the [Jira REST API v2](https://developer.atlassian.com/cloud/jira/platform/rest/v2/intro/#version).
17+
:::
18+
1519
## Actions
1620

1721
* **Add Comment to Issue** *(Notification)* - Add a comment to the specified issue.
@@ -99,4 +103,4 @@ Ticketing System
99103
* May 13, 2024 (v2.7) - A new JSON Custom field has been added to update the issue status Action
100104
* May 23, 2024 (v2.8) - Updated the Add Issue Attachments To Incident action
101105
* June 20, 2024 (v2.9) - New action: Download Attachment
102-
* September 2, 2024 (v2.10) - Updated the Update Issue action
106+
* September 2, 2024 (v2.10) - Updated the Update Issue action

docs/platform-services/automation-service/app-central/integrations/crowdstrike-falcon.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import useBaseUrl from '@docusaurus/useBaseUrl';
77

88
<img src={useBaseUrl('/img/platform-services/automation-service/app-central/logos/crowdstrike-falcon.png')} alt="crowdstrike-falcon" width="100"/>
99

10-
***Version: 1.13
11-
Updated: Feb 21, 2025***
10+
***Version: 1.14
11+
Updated: April 23, 2025***
1212

1313
The CrowdStrike Falcon integration allows you to pull and update Detections/Incidents, and search Incidents/Devices/Detections.
1414

@@ -72,3 +72,5 @@ import IntegrationsAuth from '../../../../reuse/integrations-authentication.md';
7272
+ Alerts CrowdStrike Falcon Daemon
7373
* February 21, 2025 (v1.13) - Added new action
7474
+ Get IDP Device Info
75+
* April 23, 2025 (v1.14) - Updated the Integration
76+
+ Refactored the code to improve performance and maintainability.

0 commit comments

Comments
 (0)