Microsoft IIS Service Account Password Dumped
Identifies the Internet Information Services (IIS) command-line tool, AppCmd, being used to dump sensitive configuration data such as application pool credentials. An attacker with IIS web server access via a web shell can extract service account passwords by requesting full configuration output or targeting credential-related fields.
Elastic rule (View on GitHub)
1[metadata]
2creation_date = "2020/08/18"
3integration = ["endpoint", "windows", "system", "m365_defender", "sentinel_one_cloud_funnel", "crowdstrike"]
4maturity = "production"
5updated_date = "2026/04/21"
6
7[rule]
8author = ["Elastic"]
9description = """
10Identifies the Internet Information Services (IIS) command-line tool, AppCmd, being used to dump sensitive configuration
11data such as application pool credentials. An attacker with IIS web server access via a web shell can extract service
12account passwords by requesting full configuration output or targeting credential-related fields.
13"""
14from = "now-9m"
15index = [
16 "endgame-*",
17 "logs-crowdstrike.fdr*",
18 "logs-endpoint.events.process-*",
19 "logs-m365_defender.event-*",
20 "logs-sentinel_one_cloud_funnel.*",
21 "logs-system.security*",
22 "logs-windows.forwarded*",
23 "logs-windows.sysmon_operational-*",
24 "winlogbeat-*",
25]
26language = "eql"
27license = "Elastic License v2"
28name = "Microsoft IIS Service Account Password Dumped"
29references = ["https://blog.netspi.com/decrypting-iis-passwords-to-break-out-of-the-dmz-part-1/"]
30risk_score = 21
31rule_id = "0564fb9d-90b9-4234-a411-82a546dc1343"
32severity = "low"
33tags = [
34 "Domain: Endpoint",
35 "OS: Windows",
36 "Use Case: Threat Detection",
37 "Tactic: Credential Access",
38 "Data Source: Elastic Endgame",
39 "Data Source: Elastic Defend",
40 "Data Source: Windows Security Event Logs",
41 "Data Source: Microsoft Defender XDR",
42 "Data Source: Sysmon",
43 "Data Source: SentinelOne",
44 "Data Source: Crowdstrike",
45]
46timestamp_override = "event.ingested"
47type = "eql"
48
49query = '''
50process where host.os.type == "windows" and event.type == "start" and
51 (process.name : "appcmd.exe" or ?process.pe.original_file_name == "appcmd.exe") and
52 process.args : "list" and
53 (
54 process.args : ("/text:*password*", "/text:*processModel*", "/text:*userName*", "/config", "*connectionstring*") or
55 process.args == "/text:*"
56 )
57'''
58
59
60[[rule.threat]]
61framework = "MITRE ATT&CK"
62
63[[rule.threat.technique]]
64id = "T1003"
65name = "OS Credential Dumping"
66reference = "https://attack.mitre.org/techniques/T1003/"
67
68[[rule.threat.technique]]
69id = "T1552"
70name = "Unsecured Credentials"
71reference = "https://attack.mitre.org/techniques/T1552/"
72
73[[rule.threat.technique.subtechnique]]
74id = "T1552.001"
75name = "Credentials In Files"
76reference = "https://attack.mitre.org/techniques/T1552/001/"
77
78[rule.threat.tactic]
79id = "TA0006"
80name = "Credential Access"
81reference = "https://attack.mitre.org/tactics/TA0006/"
References
Related rules
- Credential Access via TruffleHog Execution
- Credential Acquisition via Registry Hive Dumping
- Microsoft IIS Connection Strings Decryption
- NTDS Dump via Wbadmin
- NTDS or SAM Database File Copied