Skip to content

Commit c8aabc0

Browse files
committed
updating yaml
1 parent 3f04de5 commit c8aabc0

File tree

2 files changed

+32
-23
lines changed

2 files changed

+32
-23
lines changed

data_sources/cisco_secure_application_alerts.yml renamed to data_sources/cisco_secure_application_appdynamics_alerts.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Cisco Secure Application Alerts
1+
name: Cisco Secure Application AppDynamics Alerts
22
id: 5c963eb0-010e-4386-875f-5134879f14a7
33
version: 1
44
date: '2025-07-18'

detections/application/cisco_secure_application_alerts.yml

Lines changed: 31 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,31 @@ id: 9982bff4-fc5d-49a3-ab9e-2dbbab2a711b
33
version: 1
44
date: '2025-02-04'
55
author: Ryan Long, Bhavin Patel, Splunk
6-
status: production
6+
status: experimental
77
type: Anomaly
8-
description: Detections are from Cisco Secure App which detects exploited vulnerabilities against business applications.
8+
description: |
9+
The following analytic is to leverage alerts from Cisco SecureApp, which identifies and monitors exploit attempts targeting business applications. The primary attack observed involves exploiting vulnerabilities in web applications, including injection attacks (SQL, API abuse), deserialization vulnerabilities, remote code execution attempts, LOG4J and zero day attacks. These attacks are typically aimed at gaining unauthorized access, exfiltrating sensitive data, or disrupting application functionality.
10+
11+
Cisco SecureApp provides real-time detection of these threats by analyzing application-layer events and correlating attack behavior with known vulnerability signatures. This detection methodology helps the Security Operations Center (SOC) by:
12+
13+
* Identifying active exploitation attempts in real-time, allowing for quicker incident response.
14+
* Categorizing attack severity to prioritize remediation efforts based on risk level.
15+
* Providing visibility into attacker tactics, including source IP, attack techniques, and affected applications.
16+
* Generating risk-based scoring and contextual alerts to enhance decision-making within SOC workflows.
17+
* Helping analysts determine whether an attack was merely an attempt or if it successfully exploited a vulnerability.
18+
19+
By leveraging this information, SOC teams can proactively mitigate security threats, patch vulnerable applications, and enforce security controls to prevent further exploitation.
920
data_source:
10-
- Cisco Secure Application Alerts
21+
- Cisco Secure Application AppDynamics Alerts
1122
search: '|
12-
`appdynamics_security` blocked=false
13-
| fields - tag::eventtype, eventtype, host, id, index, linecount, punct, source, sourcetype, splunk_server, tag, SourceType, app, clientAddressType, application, tier, "attackEvents{}.*"
14-
| eval socketOut=mvjoin(socketOut," AND ")
15-
| eval risk_score=kennaScore
16-
| fillnull risk_score value="0"
17-
| eval risk_object=app_name
18-
| stats values(*) as * by attackId
23+
`appdynamics_security` blocked=false
24+
| rename attackEvents{}.attackOutcome AS attackOutcome, "attackEvents{}.vulnerabilityInfo.*" AS *
25+
| fields - tag::eventtype, eventtype, host, id, index, linecount, punct, source, sourcetype, splunk_server, tag, SourceType, app clientAddressType, application, tier, "attackEvents{}.*"
26+
| eval socketOut=mvjoin(socketOut," AND ")
27+
| eval risk_score=kennaScore
28+
| fillnull risk_score value="0"
29+
| eval risk_object=app_name
30+
| stats values(*) as * by attackId
1931
| eval severity=case(
2032
risk_score>=100 OR signature="LOG4J", "critical",
2133
risk_score>50 AND risk_score<75, "high",
@@ -24,19 +36,15 @@ search: '|
2436
risk_score=0 AND attackOutcome="ATTEMPTED", "medium",
2537
risk_score=0, "low",
2638
risk_score=0 AND attackOutcome="OBSERVED", "low"
27-
)
39+
)
2840
| eval risk_message=case(
29-
(signature="API" OR signature="LOG4J" OR signature="SSRF"),
30-
"An ".attackOutcome." ".signature." vulnerability is attempted to be abused from ".src_category." ip address ".src_ip." and was seen connecting to server ".dest_nt_host." hosting application ".app_name." and possibly exfiltrating data to ".socketOut."",
31-
(signature="MALIP" OR signature="SQL"),
32-
"A vulnerability is being ".attackOutcome." to be abused from ".src_category." ip address ".src_ip." and was seen connecting to server ".dest_nt_host." hosting application ".app_name.".",
33-
(signature="DESEREAL"),
34-
"The application ".app_name." deserializes untrusted data without sufficiently verifying that the resulting data will be valid. Data which is untrusted cannot be trusted to be well formed. Malformed data or unexpected data could be used to abuse application logic, deny service, or execute arbitrary code, when deserialized."
35-
)
36-
| eval risk_message = replace(replace(risk_message, "\d{1,3}(\.\d{1,3}){3}", "(\\0)"), "(http[s]?:\/\/|www\.)[^\s]+", "(\\0)")
37-
| `cisco_secure_application_alerts_filter`'
38-
how_to_implement: __UPDATE__ how to implement your search
39-
known_false_positives: __UPDATE__ known false positives for your search
41+
(signature="API" OR signature="LOG4J" OR signature="SSRF"), "An ".attackOutcome." ".signature." vulnerability is attempted to be abused from ".src_category." IP address ".src_ip." and was seen connecting to server ".dest_nt_host." hosting application ".app_name." and possibly exfiltrating data to ".socketOut."",
42+
(signature="MALIP" OR signature="SQL"), "A vulnerability is being ".attackOutcome." to be abused from ".src_category." IP address ".src_ip." and was seen connecting to server ".dest_nt_host." hosting application ".app_name.".",
43+
(signature="DESEREAL"), "The application ".app_name." deserializes untrusted data without sufficiently verifying that the resulting data will be valid. Data which is untrusted cannot be trusted to be well-formed. Malformed data or unexpected data could be used to abuse application logic, deny service, or execute arbitrary code, when deserialized."
44+
)
45+
| `cisco_secure_application_alerts_filter`'
46+
how_to_implement: In order to properly run this search, you need to ingest alerts data from AppD SecureApp, specifically ingesting data via HEC. You will also need to ensure that the data is going to sourcetype appdynamics_security. You will need to install the Splunk Add-on for AppDynamics. This add-on will give the needed field aliases to properly run this search. In a future update you will be able to run this detection if ingesting data via the TA.
47+
known_false_positives: None known at this time
4048
references:
4149
- https://docs.appdynamics.com/appd/24.x/latest/en/application-security-monitoring/integrate-cisco-secure-application-with-splunk
4250
drilldown_searches:
@@ -71,6 +79,7 @@ tags:
7179
- Splunk Enterprise Security
7280
- Splunk Cloud
7381
security_domain: threat
82+
manual_test: We are dynamically creating the risk_score field based on the severity of the alert in the SPL and that supersedes the risk score set in the detection. Setting these to manual test since otherwise we fail integration testing. The detection is also failing on unit-testing as some of the fields set in the observables are empty.
7483
tests:
7584
- name: True Positive Test
7685
attack_data:

0 commit comments

Comments
 (0)