Modification of Boot Configuration

Identifies use of bcdedit.exe to delete boot configuration data. This tactic is sometimes used as by malware or an attacker as a destructive technique.

Elastic rule (View on GitHub)

 1[metadata]
 2creation_date = "2020/03/16"
 3integration = ["endpoint", "windows"]
 4maturity = "production"
 5min_stack_comments = "New fields added: required_fields, related_integrations, setup"
 6min_stack_version = "8.3.0"
 7updated_date = "2023/10/23"
 8
 9[rule]
10author = ["Elastic"]
11description = """
12Identifies use of bcdedit.exe to delete boot configuration data. This tactic is sometimes used as by malware or an
13attacker as a destructive technique.
14"""
15from = "now-9m"
16index = ["winlogbeat-*", "logs-endpoint.events.*", "logs-windows.*", "endgame-*"]
17language = "eql"
18license = "Elastic License v2"
19name = "Modification of Boot Configuration"
20note = """## Triage and analysis
21
22### Investigating Modification of Boot Configuration
23
24Boot entry parameters, or boot parameters, are optional, system-specific settings that represent configuration options. These are stored in a boot configuration data (BCD) store, and administrators can use utilities like `bcdedit.exe` to configure these.
25
26This rule identifies the usage of `bcdedit.exe` to:
27
28- Disable Windows Error Recovery (recoveryenabled).
29- Ignore errors if there is a failed boot, failed shutdown, or failed checkpoint (bootstatuspolicy ignoreallfailures).
30
31These are common steps in destructive attacks by adversaries leveraging ransomware.
32
33#### Possible investigation steps
34
35- Investigate the script execution chain (parent process tree) for unknown processes. Examine their executable files for prevalence, whether they are located in expected locations, and if they are signed with valid digital signatures.
36- Identify the user account that performed the action and whether it should perform this kind of action.
37- Contact the account owner and confirm whether they are aware of this activity.
38- Investigate other alerts associated with the user/host during the past 48 hours.
39- Assess whether this behavior is prevalent in the environment by looking for similar occurrences across hosts.
40- Check if any files on the host machine have been encrypted.
41
42### False positive analysis
43
44- The usage of these options is not inherently malicious. Administrators can modify these configurations to force a machine to boot for troubleshooting or data recovery purposes.
45
46### Related rules
47
48- Deleting Backup Catalogs with Wbadmin - 581add16-df76-42bb-af8e-c979bfb39a59
49
50### Response and remediation
51
52- Initiate the incident response process based on the outcome of the triage.
53- Consider isolating the involved host to prevent destructive behavior, which is commonly associated with this activity.
54- 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.
55- 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.
56- Determine the initial vector abused by the attacker and take action to prevent reinfection through the same vector.
57- 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).
58
59"""
60risk_score = 21
61rule_id = "69c251fb-a5d6-4035-b5ec-40438bd829ff"
62setup="""
63
64If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
65events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
66Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
67`event.ingested` to @timestamp.
68For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
69"""
70severity = "low"
71tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Impact", "Resources: Investigation Guide", "Data Source: Elastic Endgame", "Data Source: Elastic Defend"]
72timestamp_override = "event.ingested"
73type = "eql"
74
75query = '''
76process where host.os.type == "windows" and event.type == "start" and
77  (process.name : "bcdedit.exe" or process.pe.original_file_name == "bcdedit.exe") and
78    (
79      (process.args : "/set" and process.args : "bootstatuspolicy" and process.args : "ignoreallfailures") or
80      (process.args : "no" and process.args : "recoveryenabled")
81    )
82'''
83
84
85[[rule.threat]]
86framework = "MITRE ATT&CK"
87[[rule.threat.technique]]
88id = "T1490"
89name = "Inhibit System Recovery"
90reference = "https://attack.mitre.org/techniques/T1490/"
91
92
93[rule.threat.tactic]
94id = "TA0040"
95name = "Impact"
96reference = "https://attack.mitre.org/tactics/TA0040/"

Triage and analysis

Investigating Modification of Boot Configuration

Boot entry parameters, or boot parameters, are optional, system-specific settings that represent configuration options. These are stored in a boot configuration data (BCD) store, and administrators can use utilities like bcdedit.exe to configure these.

This rule identifies the usage of bcdedit.exe to:

  • Disable Windows Error Recovery (recoveryenabled).
  • Ignore errors if there is a failed boot, failed shutdown, or failed checkpoint (bootstatuspolicy ignoreallfailures).

These are common steps in destructive attacks by adversaries leveraging ransomware.

Possible investigation steps

  • Investigate the script execution chain (parent process tree) for unknown processes. Examine their executable files for prevalence, whether they are located in expected locations, and if they are signed with valid digital signatures.
  • Identify the user account that performed the action and whether it should perform this kind of action.
  • Contact the account owner and confirm whether they are aware of this activity.
  • Investigate other alerts associated with the user/host during the past 48 hours.
  • Assess whether this behavior is prevalent in the environment by looking for similar occurrences across hosts.
  • Check if any files on the host machine have been encrypted.

False positive analysis

  • The usage of these options is not inherently malicious. Administrators can modify these configurations to force a machine to boot for troubleshooting or data recovery purposes.
  • Deleting Backup Catalogs with Wbadmin - 581add16-df76-42bb-af8e-c979bfb39a59

Response and remediation

  • Initiate the incident response process based on the outcome of the triage.
  • Consider isolating the involved host to prevent 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.
  • 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.
  • 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