forked from elastic/detection-rules
-
Notifications
You must be signed in to change notification settings - Fork 0
/
delete_volume_shadows.py
26 lines (20 loc) · 1.01 KB
/
delete_volume_shadows.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
# or more contributor license agreements. Licensed under the Elastic License
# 2.0; you may not use this file except in compliance with the Elastic License
# 2.0.
# Name: Volume Shadow Copy Deletion with vssadmin and wmic
# RTA: delete_volume_shadow.py
# signal.rule.name: Volume Shadow Copy Deletion via VssAdmin
# ELastic Detection: Volume Shadow Copy Deletion via WMIC
# ATT&CK: T1107
# Description: Uses both vssadmin.exe and wmic.exe to delete volume shadow copies.
from . import common
@common.requires_os(common.WINDOWS)
def main():
common.log("Deleting volume shadow copies...")
common.execute(["vssadmin.exe", "delete", "shadows", "/for=c:", "/oldest", "/quiet"])
# Create a volume shadow copy so that there is at least one to delete
common.execute(["wmic.exe", "shadowcopy", "call", "create", "volume=c:\\"])
common.execute(["wmic.exe", "shadowcopy", "delete", "/nointeractive"])
if __name__ == "__main__":
exit(main())