ID | Technique | Tactic |
---|---|---|
T1041 | Exfiltration Over C2 Channel | Exfiltration |
T1071.001 | Web Protocols | Command And Control |
T1105 | Ingress Tool Transfer | Command And Control |
T1573.002 | Asymmetric Cryptography | Command And Control |
Detection: Cisco Secure Firewall - High EVE Threat Confidence
Description
The following analytic detects connections with a high Encrypted Visibility Engine (EVE) threat confidence score, indicating potentially malicious behavior within encrypted traffic. It leverages Cisco Secure Firewall Threat Defense logs and evaluates the EVE_ThreatConfidencePct field, which reflects the system's confidence in classifying encrypted sessions as threats based on machine learning models and behavioral analysis. A score equal to or greater than 80 suggests the connection is highly likely to be associated with malware command and control (C2), remote access tools, or suspicious tunneling behavior. If confirmed malicious, this may indicate covert communication over TLS from compromised hosts.
Search
1`cisco_secure_firewall` EventType=ConnectionEvent EVE_ThreatConfidencePct >= 80
2
3| stats count min(_time) as firstTime max(_time) as lastTime
4 Values(rule) as rule
5 Values(url) as url
6 by EVE_Process, EVE_ThreatConfidencePct, src_ip, dest, dest_port, transport, action
7
8| `security_content_ctime(firstTime)`
9
10| `security_content_ctime(lastTime)`
11
12| `cisco_secure_firewall___high_eve_threat_confidence_filter`
Data Source
Name | Platform | Sourcetype | Source |
---|---|---|---|
Cisco Secure Firewall Threat Defense Connection Event | N/A | 'cisco:sfw:estreamer' |
'not_applicable' |
Macros Used
Name | Value |
---|---|
cisco_secure_firewall | sourcetype="cisco:sfw:estreamer" |
cisco_secure_firewall___high_eve_threat_confidence_filter | search * |
cisco_secure_firewall___high_eve_threat_confidence_filter
is an empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.
Annotations
Default Configuration
This detection is configured by default in Splunk Enterprise Security to run with the following settings:
Setting | Value |
---|---|
Disabled | true |
Cron Schedule | 0 * * * * |
Earliest Time | -70m@m |
Latest Time | -10m@m |
Schedule Window | auto |
Creates Risk Event | True |
Implementation
This search requires Cisco Secure Firewall Threat Defense Logs, which
includes the ConnectionEvent EventType. This search uses an input macro named cisco_secure_firewall
.
We strongly recommend that you specify your environment-specific configurations
(index, source, sourcetype, etc.) for Cisco Secure Firewall Threat Defense logs. Replace the macro definition
with configurations for your Splunk environment. The search also uses a post-filter
macro designed to filter out known false positives.
The logs are to be ingested using the Splunk Add-on for Cisco Security Cloud (https://splunkbase.splunk.com/app/7404).
The access policy must also enable logging.
Known False Positives
Some benign applications may exhibit behaviors that resemble encrypted threat patterns, especially if they use uncommon encryption libraries or custom protocols.
Custom-developed or internal tools may trigger high EVE confidence scores depending on how they encrypt data.
It is recommended to validate the associated process (EVE_Process
) and destination context, and correlate with other logs (e.g., endpoint or threat intel) before taking response action.
Associated Analytic Story
Risk Based Analytics (RBA)
Risk Message:
High threat confidence ($EVE_ThreatConfidencePct$%) from $EVE_Process$ on $src_ip$"
Risk Object | Risk Object Type | Risk Score | Threat Objects |
---|---|---|---|
src_ip | system | 20 | EVE_Process |
References
Detection Testing
Test Type | Status | Dataset | Source | Sourcetype |
---|---|---|---|---|
Validation | ✅ Passing | N/A | N/A | N/A |
Unit | ✅ Passing | Dataset | not_applicable |
cisco:sfw:estreamer |
Integration | ✅ Passing | Dataset | not_applicable |
cisco:sfw:estreamer |
Replay any dataset to Splunk Enterprise by using our replay.py
tool or the UI.
Alternatively you can replay a dataset into a Splunk Attack Range
Source: GitHub | Version: 1