Skip to content

Commit fed04ed

Browse files
committed
feat(rules): Add Potential privilege escalation via elevated IFileOperation COM interface rule
Identifies potential privilege escalation attempts through abuse of the elevated IFileOperation COM interface to bypass User Account Control (UAC) and gain unauthorized administrative privileges. Adversaries leverage trusted Windows components and auto-elevated COM objects to perform file operations in protected system locations.
1 parent e1e2afa commit fed04ed

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

rules/macros/macros.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@
4040
- macro: set_file_information
4141
expr: evt.name = 'SetFileInformation'
4242

43+
- macro: move_file
44+
expr: evt.name = 'CreateFile' and thread.callstack.symbols imatches ('KernelBase.dll!MoveFile*')
45+
4346
- macro: query_registry
4447
expr: evt.name in ('RegQueryKey', 'RegQueryValue') and registry.status = 'Success'
4548

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Potential privilege escalation via elevated IFileOperation COM interface
2+
id: e2e09014-78ad-4a73-9178-ba33c74f7839
3+
version: 1.0.0
4+
description: |
5+
Identifies potential privilege escalation attempts through abuse of the elevated
6+
IFileOperation COM interface to bypass User Account Control (UAC) and gain unauthorized
7+
administrative privileges. Adversaries leverage trusted Windows components and auto-elevated
8+
COM objects to perform file operations in protected system locations.
9+
labels:
10+
tactic.id: TA0004
11+
tactic.name: Privilege Escalation
12+
tactic.ref: https://attack.mitre.org/tactics/TA0004/
13+
technique.id: T1548
14+
technique.name: Abuse Elevation Control Mechanism
15+
technique.ref: https://attack.mitre.org/techniques/T1548/
16+
subtechnique.id: T1548.002
17+
subtechnique.name: Bypass User Account Control
18+
subtechnique.ref: https://attack.mitre.org/techniques/T1548/002/
19+
references:
20+
- https://github.com/hfiref0x/UACME
21+
- https://fuzzysecurity.com/tutorials/27.html
22+
- https://github.com/3gstudent/Use-COM-objects-to-bypass-UAC/blob/master/IFileOperation.cpp
23+
24+
condition: >
25+
sequence
26+
maxspan 2m
27+
|ps.name ~= 'dllhost.exe' and
28+
((create_file) or (move_file)) and ps.sid imatches ('S-1-5-21-*') and
29+
(file.is_dll or file.extension iin ('.dll', '.dl~')) and
30+
file.path imatches
31+
(
32+
'?:\\Windows\\System32\\*',
33+
'?:\\Windows\\SysWoW64\\*',
34+
'?:\\Program Files\\*',
35+
'?:\\Program Files (x86)\\*'
36+
)
37+
| by file.path.stem
38+
|load_dll and
39+
ps.exe imatches
40+
(
41+
'?:\\Windows\\System32\\*',
42+
'?:\\Windows\\SysWoW64\\*',
43+
'?:\\Program Files\\*',
44+
'?:\\Program Files (x86)\\*'
45+
)
46+
| by dll.path.stem
47+
action:
48+
- name: kill
49+
50+
severity: high
51+
52+
min-engine-version: 3.0.0

0 commit comments

Comments
 (0)