name: Web Servers Executing Suspicious Processes
id: ec3b7601-689a-4463-94e0-c9f45638efb9
version: 1
date: '2019-04-01'
author: David Dorsey, Splunk
type: batch
datamodel:
- Endpoint
description: This search looks for suspicious processes on all systems labeled as
  web servers.
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
  as lastTime from datamodel=Endpoint.Processes where Processes.dest_category="web_server"
  AND (Processes.process="*whoami*" OR Processes.process="*ping*" OR Processes.process="*iptables*"
  OR Processes.process="*wget*" OR Processes.process="*service*" OR Processes.process="*curl*")
  by Processes.process Processes.process_name, Processes.dest Processes.user| `drop_dm_object_name(Processes)`
  | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `web_servers_executing_suspicious_processes_filter`'
how_to_implement: You must be ingesting data that records process activity from your
  hosts to populate the Endpoint data model in the Processes node. You must also be
  ingesting logs with both the process name and command line from your endpoints.
  The command-line arguments are mapped to the "process" field in the Endpoint data
  model. In addition, web servers will need to be identified in the Assets and Identity
  Framework of Enterprise Security.
known_false_positives: Some of these processes may be used legitimately on web servers
  during maintenance or other administrative tasks.
references: []
tags:
  analytic_story:
  - Apache Struts Vulnerability
  asset_type: Web Server
  cis20:
  - CIS 3
  kill_chain_phases:
  - Actions on Objectives
  mitre_attack_id:
  - T1082
  nist:
  - PR.IP
  product:
  - Splunk Enterprise
  - Splunk Enterprise Security
  - Splunk Cloud
  required_fields:
  - _time
  - Processes.dest_category
  - Processes.process
  - Processes.process_name
  - Processes.dest
  - Processes.user
  security_domain: endpoint
