-
Notifications
You must be signed in to change notification settings - Fork 167
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add rules for volume interaction via IOCTLs (#879)
* add rules for volume interaction via IOCTLs * rename interact with driver * factor out IOCTL handling * fix 'set-system-properties' for 'install driver' * fmt
- Loading branch information
1 parent
0c32d65
commit 33feff1
Showing
11 changed files
with
111 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
22 changes: 0 additions & 22 deletions
22
host-interaction/driver/interact-with-driver-via-control-codes.yml
This file was deleted.
Oops, something went wrong.
14 changes: 14 additions & 0 deletions
14
host-interaction/driver/interact-with-driver-via-ioctl.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
rule: | ||
meta: | ||
name: interact with driver via IOCTL | ||
namespace: host-interaction/driver | ||
authors: | ||
- moritz.raabe@mandiant.com | ||
scopes: | ||
static: basic block | ||
dynamic: thread | ||
examples: | ||
- Practical Malware Analysis Lab 10-03.exe_:0x40108c | ||
features: | ||
- or: | ||
- api: DeviceIoControl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
rule: | ||
meta: | ||
name: unload driver | ||
namespace: host-interaction/driver | ||
authors: | ||
- moritz.raabe@mandiant.com | ||
scopes: | ||
static: basic block | ||
dynamic: call | ||
att&ck: | ||
- Persistence::Create or Modify System Process::Windows Service [T1543.003] | ||
examples: | ||
- 31cee4f66cf3b537e3d2d37a71f339f4:0x1400044ce | ||
features: | ||
- or: | ||
- api: NtUnloadDriver | ||
- api: ZwUnloadDriver |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
rule: | ||
meta: | ||
name: get disk information via IOCTL | ||
namespace: host-interaction/hardware/storage | ||
authors: | ||
- william.ballenthin@mandiant.com | ||
scopes: | ||
static: basic block | ||
dynamic: call | ||
att&ck: | ||
- Discovery::System Information Discovery [T1082] | ||
mbc: | ||
- Discovery::System Information Discovery [E1082] | ||
references: | ||
- https://www.crowdstrike.com/blog/the-anatomy-of-wiper-malware-part-3/ | ||
- http://www.ioctls.net/ | ||
features: | ||
- and: | ||
- or: | ||
- match: interact with driver via IOCTL | ||
- characteristic: indirect call | ||
- or: | ||
- number: 0x70050 = IOCTL_DISK_GET_DRIVE_LAYOUT_EX | ||
- number: 0x24050 = IOCTL_DISK_GET_DRIVE_GEOMETRY_EX | ||
- number: 0x2d1080 = IOCTL_STORAGE_GET_DEVICE_NUMBER |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
rule: | ||
meta: | ||
name: get volume information via IOCTL | ||
namespace: host-interaction/hardware/storage | ||
authors: | ||
- william.ballenthin@mandiant.com | ||
scopes: | ||
static: basic block | ||
dynamic: call | ||
att&ck: | ||
- Discovery::System Information Discovery [T1082] | ||
mbc: | ||
- Discovery::System Information Discovery [E1082] | ||
references: | ||
- https://www.crowdstrike.com/blog/the-anatomy-of-wiper-malware-part-3/ | ||
features: | ||
- and: | ||
- or: | ||
- match: interact with driver via IOCTL | ||
- characteristic: indirect call | ||
- number: 0x90064 = FSCTL_GET_NTFS_VOLUME_DATA |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
rule: | ||
meta: | ||
name: unmount volume via IOCTL | ||
namespace: host-interaction/hardware/storage | ||
authors: | ||
- william.ballenthin@mandiant.com | ||
scopes: | ||
static: function | ||
dynamic: call | ||
references: | ||
- https://www.crowdstrike.com/blog/the-anatomy-of-wiper-malware-part-3/ | ||
features: | ||
- and: | ||
- or: | ||
- match: interact with driver via IOCTL | ||
- characteristic: indirect call | ||
- and: | ||
- number: 0x90018 = FSCTL_LOCK_VOLUME | ||
- number: 0x90020 = FSCTL_DISMOUNT_VOLUME |