Detection: Cisco Secure Firewall - PHP2Shell Suspicious Upload Activity

Description

This analytic detects suspicious PHP web application upload activity using Cisco Secure Firewall Threat Defense Intrusion Events. The matching network signature identifies a request pattern associated with attempts to exhaust server resources through PHP session handling. Investigate the source, targeted application, and related web server activity to determine whether the request was part of PHP2Shell exploitation.

 1`cisco_secure_firewall` EventType=IntrusionEvent SignatureID=67360
 2
 3| fillnull
 4
 5| stats min(_time) as firstTime
 6        max(_time) as lastTime
 7        values(SignatureID) as SignatureID
 8        values(signature) as signature
 9        values(class_desc) as class_desc
10        values(MitreAttackGroups) as MitreAttackGroups
11        values(InlineResult) as InlineResult
12        values(InlineResultReason) as InlineResultReason
13        values(src) as src
14        values(dest_port) as dest_port
15        values(rule) as rule
16        values(transport) as transport
17        values(app) as app
18        by dest
19
20| `security_content_ctime(firstTime)`
21
22| `security_content_ctime(lastTime)`
23
24| `cisco_secure_firewall___php2shell_suspicious_upload_activity_filter`

Data Source

Name Platform Sourcetype Source
Cisco Secure Firewall Threat Defense Intrusion Event Network icon Network 'cisco:sfw:estreamer' 'not_applicable'

Macros Used

Name Value
security_content_ctime convert timeformat="%Y-%m-%dT%H:%M:%S" ctime($field$)
cisco_secure_firewall___php2shell_suspicious_upload_activity_filter search *
cisco_secure_firewall___php2shell_suspicious_upload_activity_filter is an empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.

Annotations

CVE

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 Finding (Notable) Yes
Rule Title %name%
Rule Description %description%
Notable Event Fields user, dest
Creates Intermediate Finding (Risk Event) No
TTP detections generate a Finding (Notable) and may generate Intermediate Findings (Risk Events) for associated entities.

Implementation

This search requires Cisco Secure Firewall Threat Defense logs with IntrusionEvent data. It uses the cisco_secure_firewall input macro, configure it for your environment (index, source, sourcetype). Ensure intrusion events are collected via the Splunk Add-on for Cisco Security Cloud (https://splunkbase.splunk.com/app/7404) and that the relevant intrusion policy is enabled.

Known False Positives

Approved load testing or unusual multipart uploads may trigger this signature. Review the request context and the targeted service.

Associated Analytic Story

Finding

Title Entity Field Entity Type Risk Score
Suspicious PHP upload activity from [$src$] targeting [$dest$] dest system 50

Threat Objects

Field Type
signature signature
src ip_address

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