Utilização

Comandos Básicos

Informações do SO

systeminfo

# Procura por toda linha que tem "Os" ou "Name"
systeminfo | findstr "Os Name"

# Pegando HotFix para sabermos até onde o SO está atualizada
wmic qfe get HotFixID,InstalledOn

# Quando se usar o "/C:", o findstr procura pela string completa e não por parte dela
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" /C:"System Type"

# Enumerando driver e módulos do Kernel
driverquery.exe /v /fo csv | ConvertFrom-CSV | Select-Object 'Display Name', 'Start Mode', Path

# Listando os drivers instalados
driverquery /v

# Informações sobre partições do disco
wmic volume get Label,DeviceID,DriveLetter, FileSystem,Capacity,FreeSpace

# Listando as variáveis de ambiente
set

# Programas que são iniciados junto com o SO
wmic startup get Caption,Command,Location,User

# Acessando registro
reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\run"

Hostname do host

Informações de Hardware

Usuário atual

Executando o prompt de comando com outro usuário. Pode ser qualquer usuário e qualquer executável, não precisa ser necessariamente o cmd. Após isso, basta inserir a senha do usuário.

Embutindo mais de um comando em um linha

Paths de correção do SO

Mostrando o diretório atual

Removendo diretórios vazio

Removendo diretórios que contém conteúdos

Listando aplicativos instalados pelo Windows Installer

Listando atualizações do sistema

Verificando arquivos ocultos

Serviços

Restart

Configurando

Detalhes sobre um determinado serviço

Verificando status do serviço

Processos

Listando todos os processo

Matando processo

Schedule

Visualizando todas as tarefas agendadas

Redes

Informações básicas

Mapeando Unidade de Rede

Acessando Unidade de Rede

Removendo uma Unidade de Rede

Removendo todas as Unidades de Rede

Conexões

Abaixo, podemos lista todas as conexões remotas, assim seus processos, portas e PID.

Acessando Hosts Remotos

PSExec

Acessando localmente com a conta de outro usuário. Note que após isso, será necessário informar a senha

Acessando o Domain Controller

runas

PSRemoting / Enter-PSSession

PSRemoting vem habilitado por padrão nos Windows Servers (a partir do 2012) e em máquinas Windows 10, é preciso habilitar manualmente (vide comando abaixo) onde é preciso ter direitos de administrador local

Existe, duas maneiras de realizar o acesso via PSRemoting:

Sem Estado = Dessa maneira não segura uma sessão, por exemplo, se criar variáveis, sair e voltar nomente a acessar a máquina, as variáveis serão perdidas. Ao fazer isso, você irá estar logado na máquina alvo.

Com Estado = Semelhante a forma anterior, porém esse pode manter uma sessão ativa (persistiva)

OBS.: Sempre que uma sessão for aberta pelo PSRemoting, é executado um novo processo em wsmprovhost.

Invoke-Command

Também podemos executar comandos em um determinado computador ou em um lista de computadores. Isso é útil para executar scripts de forma massiva. Substitua o -ComputerName por -Session, caso tenha sessões ativas (verifique acima como criar uma sessão).

Caso queira executar arquivos ps1 em uma máquina de destino, não é preciso fazer o upload do arquivo na máquina alvo, muito menos acessá-la e depois fazer o download. Para isso podemos fazer de forma remota, executando o arquivo em memória. Note que esse arquivo será executada na máquina do atacante e então será disponibilizada para a máquina alvo, então execute Set-ExecutionPolicy antes.

Para melhorar mais a vida do atacante, é possível carregar um script malicioso (por exemplo, o mimikatz) localmente e chamar a função remotamente. Sendo assim, nós carregamos todo o Mimikatz na máquina atacante e, na hora de executar o script (após ter carregado o ps1), vamos chamá-lo de fato, porém este vai ser executado remotamente na máquina alvo.

wmic

rubeus

Altere o hash NTLM no final do comando

Mimikatz

Altere o hash NTLM no final do comando

Windows Defender

Verificando todas configurações do Windows Defender

Para verificar uma determinada configuração do Windows Defender, coloque o seu nome no sufixo do comando. No comando abaixo, utilizamos o ExclusionPath para saber em quais diretórios o Windows Defender não está atuando.

Para desabilitarmos a proteção em tempo real do Windows Defender, podemos utilizar o seguinte comando:

Gerenciando Usuários e Grupos

Arquivos Importantes

c:\Pagefile.sys = Também chamado de memória virtual, é um arquivo criado pelo Windows para compensar a capacidade limitada da Memória RAM. Essa memória (no HD) será utilizada quando a RAM estiver cheia, semelhante ao SWAP do Linux

Recuperando Senhas

Para recuperar a senha do Windows, precisamos de dois arquivos: system e SAM. Depois de ter esses dois arquivos, você pode extrair o hashed usando o pwdump, desta forma:

Os arquivos system e SAM podem ser encontrados em locais diferentes, então experimente todos eles. Em um servidor da Web, o caminho pode diferenciar maiúsculas e minúsculas, embora seja o Windows. Abaixo estão os caminhos mais comuns:

ATENÇÃO.: Para acessar o arquivo SAM, precisa estar como usuário system, pois nem o usuário administrador tem acesso a esse arquivo. No registro (regedit), podemos localizá-lo em HKEY_LOCAL_MACHINE\SAM. Nos Controladores de Domínio (Domain Controller), o arquivo está em %windir%\WindowsDS\ntds.dit

Buscando por Paths de Serviços sem Aspas (Unquoted Service Paths)

Procure Binary_path_name e veja se não está entre aspas. Se o caminho contiver um espaço e não for citado, o serviço estará vulnerável

Liberando Acesso RDP no Firewall do Windows

Listando Drivers Instalados

Last updated

Was this helpful?