ID | Technique | Tactic |
---|---|---|
T1505 | Server Software Component | Persistence |
T1505.004 | IIS Components | Persistence |
Detection: Windows IIS Components Module Failed to Load
Description
The following analytic detects when an IIS Module DLL fails to load due to a configuration problem, identified by EventCode 2282. This detection leverages Windows Application event logs to identify repeated failures in loading IIS modules. Such failures can indicate misconfigurations or potential tampering with IIS components. If confirmed malicious, this activity could lead to service disruptions or provide an attacker with opportunities to exploit vulnerabilities within the IIS environment. Immediate investigation is required to determine the legitimacy of the failing module and to mitigate any potential security risks.
Search
1`wineventlog_application` EventCode=2282
2| stats count min(_time) as firstTime max(_time) as lastTime by EventCode dest Name ModuleDll
3| `security_content_ctime(firstTime)`
4| `security_content_ctime(lastTime)`
5| `windows_iis_components_module_failed_to_load_filter`
Data Source
Name | Platform | Sourcetype | Source |
---|---|---|---|
Windows Event Log Application 2282 | Windows | 'XmlWinEventLog' |
'XmlWinEventLog:Application' |
Macros Used
Name | Value |
---|---|
security_content_ctime | convert timeformat="%Y-%m-%dT%H:%M:%S" ctime($field$) |
windows_iis_components_module_failed_to_load_filter | search * |
windows_iis_components_module_failed_to_load_filter
is an empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.
Annotations
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 Risk Event | True |
Implementation
IIS must be installed and Application event logs must be collected in order to utilize this analytic.
Known False Positives
False positives will be present until all module failures are resolved or reviewed.
Associated Analytic Story
Risk Based Analytics (RBA)
Risk Message | Risk Score | Impact | Confidence |
---|---|---|---|
A new IIS Module has been loaded and should be reviewed on $dest$. | 25 | 50 | 50 |
References
-
https://unit42.paloaltonetworks.com/unit42-oilrig-uses-rgdoor-iis-backdoor-targets-middle-east/
-
https://github.com/redcanaryco/atomic-red-team/tree/master/atomics/T1505.004
-
https://strontic.github.io/xcyclopedia/library/appcmd.exe-055B2B09409F980BF9B5A3969D01E5B2.html
Detection Testing
Test Type | Status | Dataset | Source | Sourcetype |
---|---|---|---|---|
Validation | ✅ Passing | N/A | N/A | N/A |
Unit | ✅ Passing | Dataset | XmlWinEventLog:Application |
XmlWinEventLog |
Integration | ✅ Passing | Dataset | XmlWinEventLog:Application |
XmlWinEventLog |
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: 3