Skip to content

Commit 9beeca6

Browse files
committed
feat(rules): Suspicious XSL script execution
Identifies a suspicious execution of XSL script via Windows Management Instrumentation command line tool or XSL transformation utility. Adversaries may bypass application control and obscure the execution of code by embedding scripts inside XSL files. Extensible Stylesheet Language (XSL) files are commonly used to describe the processing and rendering of data within XML files.
1 parent fd099e9 commit 9beeca6

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Suspicious XSL script execution
2+
id: 65136b30-14ae-46dd-b8e5-9dfa99690d74
3+
version: 1.0.0
4+
description: |
5+
Identifies a suspicious execution of XSL script via Windows Management Instrumentation command line tool or XSL
6+
transformation utility. Adversaries may bypass application control and obscure the execution of code by embedding
7+
scripts inside XSL files. Extensible Stylesheet Language (XSL) files are commonly used to describe the processing
8+
and rendering of data within XML files.
9+
labels:
10+
tactic.id: TA0005
11+
tactic.name: Defense Evasion
12+
tactic.ref: https://attack.mitre.org/tactics/TA0005/
13+
technique.id: T1220
14+
technique.name: XSL Script Processing
15+
technique.ref: https://attack.mitre.org/techniques/T1220/
16+
references:
17+
- https://www.ired.team/offensive-security/code-execution/application-whitelisting-bypass-with-wmic-and-xsl
18+
19+
condition: >
20+
sequence
21+
maxspan 3m
22+
|spawn_process and (((ps.child.name ~= 'wmic.exe' or ps.child.pe.file.name ~= 'wmic.exe') and ps.child.cmdline imatches
23+
('* format*:*', '*/format*:*', '*-format*:*')
24+
and
25+
not
26+
ps.child.cmdline imatches
27+
(
28+
'*format:list*',
29+
'*format:htable*',
30+
'*format:hform*',
31+
'*format:table*',
32+
'*format:mof*',
33+
'*format:value*',
34+
'*format:rawxml*',
35+
'*format:xml*',
36+
'*format:csv*'
37+
)
38+
)
39+
or
40+
ps.child.name ~= 'msxsl.exe' or ps.child.pe.file.name ~= 'msxsl.exe'
41+
)
42+
| by ps.child.uuid
43+
|load_dll and image.name iin ('scrobj.dll', 'vbscript.dll', 'jscript.dll', 'jscript9.dll')| by ps.uuid
44+
45+
output: >
46+
Suspicious XSL script executed by process %1.ps.child.name with command line arguments %1.ps.child.args
47+
severity: high
48+
49+
min-engine-version: 2.4.0

0 commit comments

Comments
 (0)