High Number of Process Terminations

This rule identifies a high number (10) of process terminations via pkill from the same host within a short time period.

Elastic rule (View on GitHub)

  1[metadata]
  2creation_date = "2022/07/27"
  3integration = ["endpoint", "auditd_manager"]
  4maturity = "production"
  5updated_date = "2024/05/21"
  6
  7[rule]
  8author = ["Elastic"]
  9description = "This rule identifies a high number (10) of process terminations via pkill from the same host within a short time period.\n"
 10from = "now-9m"
 11index = ["logs-endpoint.events.*", "endgame-*", "auditbeat-*", "logs-auditd_manager.auditd-*"]
 12language = "kuery"
 13license = "Elastic License v2"
 14name = "High Number of Process Terminations"
 15note = """## Triage and analysis
 16
 17### Investigating High Number of Process Terminations
 18
 19Attackers can kill processes for a variety of purposes. For example, they can kill process associated with business applications and databases to release the lock on files used by these applications so they may be encrypted,or stop security and backup solutions, etc.
 20
 21This rule identifies a high number (10) of process terminations via pkill from the same host within a short time period.
 22
 23#### Possible investigation steps
 24
 25- Examine the entry point to the host and user in action via the Analyse View.
 26  - Identify the session entry leader and session user.
 27- Examine the contents of session leading to the process termination(s) via the Session View.
 28  - Examine the command execution pattern in the session, which may lead to suspricous activities.
 29- Examine the process killed during the malicious execution
 30  - Identify imment threat to the system from the process killed.
 31  - Take necessary incident response actions to respawn necessary process.
 32
 33### False positive analysis
 34
 35- This activity is unlikely to happen legitimately. Benign true positives (B-TPs) can be added as exceptions if necessary.
 36
 37### Response and remediation
 38
 39- Initiate the incident response process based on the outcome of the triage.
 40- Isolate the involved host to prevent further destructive behavior, which is commonly associated with this activity.
 41- Investigate credential exposure on systems compromised or used by the attacker to ensure all compromised accounts are identified. Reset passwords for these accounts and other potentially compromised credentials, such as email, business systems, and web services.
 42- Reimage the host operating system or restore it to the operational state.
 43- If any other destructive action was identified on the host, it is recommended to prioritize the investigation and look for ransomware preparation and execution activities.
 44- Run a full antimalware scan. This may reveal additional artifacts left in the system, persistence mechanisms, and malware components.
 45- Determine the initial vector abused by the attacker and take action to prevent reinfection through the same vector.
 46- Using the incident response data, update logging and audit policies to improve the mean time to detect (MTTD) and the mean time to respond (MTTR).
 47"""
 48risk_score = 47
 49rule_id = "67f8443a-4ff3-4a70-916d-3cfa3ae9f02b"
 50setup = """## Setup
 51
 52This rule requires data coming in from Elastic Defend.
 53
 54### Elastic Defend Integration Setup
 55Elastic Defend is integrated into the Elastic Agent using Fleet. Upon configuration, the integration allows the Elastic Agent to monitor events on your host and send data to the Elastic Security app.
 56
 57#### Prerequisite Requirements:
 58- Fleet is required for Elastic Defend.
 59- To configure Fleet Server refer to the [documentation](https://www.elastic.co/guide/en/fleet/current/fleet-server.html).
 60
 61#### The following steps should be executed in order to add the Elastic Defend integration on a Linux System:
 62- Go to the Kibana home page and click "Add integrations".
 63- In the query bar, search for "Elastic Defend" and select the integration to see more details about it.
 64- Click "Add Elastic Defend".
 65- Configure the integration name and optionally add a description.
 66- Select the type of environment you want to protect, either "Traditional Endpoints" or "Cloud Workloads".
 67- Select a configuration preset. Each preset comes with different default settings for Elastic Agent, you can further customize these later by configuring the Elastic Defend integration policy. [Helper guide](https://www.elastic.co/guide/en/security/current/configure-endpoint-integration-policy.html).
 68- We suggest selecting "Complete EDR (Endpoint Detection and Response)" as a configuration setting, that provides "All events; all preventions"
 69- Enter a name for the agent policy in "New agent policy name". If other agent policies already exist, you can click the "Existing hosts" tab and select an existing policy instead.
 70For more details on Elastic Agent configuration settings, refer to the [helper guide](https://www.elastic.co/guide/en/fleet/8.10/agent-policy.html).
 71- Click "Save and Continue".
 72- To complete the integration, select "Add Elastic Agent to your hosts" and continue to the next section to install the Elastic Agent on your hosts.
 73For more details on Elastic Defend refer to the [helper guide](https://www.elastic.co/guide/en/security/current/install-endpoint.html).
 74"""
 75severity = "medium"
 76tags = [
 77    "Domain: Endpoint",
 78    "OS: Linux",
 79    "Use Case: Threat Detection",
 80    "Tactic: Impact",
 81    "Resources: Investigation Guide",
 82    "Data Source: Elastic Endgame",
 83    "Data Source: Elastic Defend",
 84    "Data Source: Auditd Manager",
 85]
 86timestamp_override = "event.ingested"
 87type = "threshold"
 88
 89query = '''
 90event.category:process and host.os.type:linux and event.type:start and process.name:"pkill" and process.args:"-f"
 91'''
 92
 93
 94[[rule.threat]]
 95framework = "MITRE ATT&CK"
 96[[rule.threat.technique]]
 97id = "T1489"
 98name = "Service Stop"
 99reference = "https://attack.mitre.org/techniques/T1489/"
100
101
102[rule.threat.tactic]
103id = "TA0040"
104name = "Impact"
105reference = "https://attack.mitre.org/tactics/TA0040/"
106
107[rule.threshold]
108field = ["host.id", "process.executable", "user.name"]
109value = 10

Triage and analysis

Investigating High Number of Process Terminations

Attackers can kill processes for a variety of purposes. For example, they can kill process associated with business applications and databases to release the lock on files used by these applications so they may be encrypted,or stop security and backup solutions, etc.

This rule identifies a high number (10) of process terminations via pkill from the same host within a short time period.

Possible investigation steps

  • Examine the entry point to the host and user in action via the Analyse View.
    • Identify the session entry leader and session user.
  • Examine the contents of session leading to the process termination(s) via the Session View.
    • Examine the command execution pattern in the session, which may lead to suspricous activities.
  • Examine the process killed during the malicious execution
    • Identify imment threat to the system from the process killed.
    • Take necessary incident response actions to respawn necessary process.

False positive analysis

  • This activity is unlikely to happen legitimately. Benign true positives (B-TPs) can be added as exceptions if necessary.

Response and remediation

  • Initiate the incident response process based on the outcome of the triage.
  • Isolate the involved host to prevent further destructive behavior, which is commonly associated with this activity.
  • Investigate credential exposure on systems compromised or used by the attacker to ensure all compromised accounts are identified. Reset passwords for these accounts and other potentially compromised credentials, such as email, business systems, and web services.
  • Reimage the host operating system or restore it to the operational state.
  • If any other destructive action was identified on the host, it is recommended to prioritize the investigation and look for ransomware preparation and execution activities.
  • Run a full antimalware scan. This may reveal additional artifacts left in the system, persistence mechanisms, and malware components.
  • Determine the initial vector abused by the attacker and take action to prevent reinfection through the same vector.
  • Using the incident response data, update logging and audit policies to improve the mean time to detect (MTTD) and the mean time to respond (MTTR).

Related rules

to-top