Enumeração e Sincronização Anônima do Rsync

LinuxBeginner
Pratique Agora

Introdução

Bem-vindo a este laboratório prático focado em enumeração e exploração de Rsync. Rsync é uma utilidade amplamente utilizada para sincronizar arquivos e diretórios entre dois locais em uma rede. Embora poderoso, se mal configurado, pode expor dados sensíveis.

Neste laboratório, você simulará um cenário comum em testes de penetração onde um serviço de backup está mal configurado. Você começará realizando reconhecimento básico de rede para confirmar que o alvo está online. Em seguida, usará a ferramenta nmap para escanear o serviço Rsync. Uma vez identificado, você enumerará os compartilhamentos disponíveis e explorará uma configuração de acesso anônimo para baixar arquivos do alvo, recuperando finalmente uma flag oculta.

Ao concluir, você entenderá como:

  • Verificar a conectividade de rede usando ping.
  • Escanear o serviço Rsync em sua porta padrão usando nmap.
  • Enumerar e conectar-se a um compartilhamento Rsync anônimo.
  • Sincronizar arquivos de um alvo remoto para sua máquina local.

Vamos começar.

Verificar Conectividade com o Alvo usando Ping

Nesta etapa, você começará confirmando que o sistema alvo é alcançável a partir da sua máquina. O comando ping é uma ferramenta padrão de diagnóstico de rede que envia pacotes ICMP Echo Request para um host para testar a conectividade. Este é o primeiro e mais básico passo em qualquer tarefa de reconhecimento de rede.

Seu ambiente inclui um sistema alvo acessível através do nome de host target.

Execute o seguinte comando no terminal para enviar quatro pacotes para o target e verificar se ele está online:

ping -c 4 target

Você deverá ver uma saída semelhante à seguinte, que confirma que o alvo está respondendo às suas solicitações. O endereço IP e os tempos de resposta podem diferir ligeiramente.

PING target (172.17.0.2) 56(84) bytes of data.
64 bytes from target (172.17.0.2): icmp_seq=1 ttl=64 time=0.091 ms
64 bytes from target (172.17.0.2): icmp_seq=2 ttl=64 time=0.068 ms
64 bytes from target (172.17.0.2): icmp_seq=3 ttl=64 time=0.065 ms
64 bytes from target (172.17.0.2): icmp_seq=4 ttl=64 time=0.067 ms

--- target ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3075ms
rtt min/avg/max/mdev = 0.065/0.072/0.091/0.011 ms

Com uma resposta bem-sucedida, você confirmou que existe uma conexão de rede estável entre sua máquina e o alvo.

Escanear Portas Abertas com Nmap

Nesta etapa, você usará o nmap para escanear o alvo em busca de portas abertas e identificar os serviços em execução. Nmap é uma ferramenta poderosa para descoberta de rede e auditoria de segurança. Focaremos nosso escaneamento na porta padrão do Rsync, que é 873.

Execute o seguinte comando para realizar um escaneamento de versão na porta 873 do target:

nmap -sV -p 873 target

Vamos detalhar este comando:

  • nmap: O comando para executar a ferramenta Network Mapper.
  • -sV: Habilita a detecção de versão, que tenta determinar a versão do serviço em execução na porta aberta.
  • -p 873: Especifica que o Nmap deve escanear apenas a porta 873.

Após a conclusão do escaneamento, você verá uma saída semelhante a esta:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-09-12 11:20 CST
Nmap scan report for target (172.17.0.2)
Host is up (0.00012s latency).

PORT    STATE SERVICE VERSION
873/tcp open  rsync   (protocol version 31)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.35 seconds

A saída confirma que a porta 873/tcp está open (aberta) e está executando o serviço rsync. Esta informação é crucial para a próxima fase do nosso ataque.

Conectar ao Alvo via Rsync

Nesta etapa, você interagirá com o serviço Rsync descoberto. A primeira ação é listar os "módulos" ou compartilhamentos disponíveis no servidor. Se o acesso anônimo estiver habilitado, o servidor responderá com uma lista de diretórios publicamente acessíveis.

Execute o seguinte comando para listar os módulos no target:

rsync rsync://target

O servidor deve responder com uma lista de módulos disponíveis. Neste caso, você verá um módulo chamado public.

public          Public Files

Agora que você sabe que um módulo chamado public existe, pode sincronizar seu conteúdo para sua máquina local. Usaremos as flags -av: -a para modo de arquivo (que preserva permissões, propriedade, etc.) e -v para saída detalhada.

Execute o comando abaixo para baixar o conteúdo do módulo public para o seu diretório atual (.):

rsync -av rsync://target/public/ .

O comando se conectará ao alvo, transferirá os arquivos e exibirá um resumo da operação.

receiving incremental file list
./
flag.txt

sent 43 bytes  received 121 bytes  328.00 bytes/sec
total size is 31  speedup is 0.19

A saída mostra que um arquivo chamado flag.txt foi baixado com sucesso para o seu diretório local.

Explorar Sistema Alvo e Localizar Flag

Nesta etapa final, você inspecionará os arquivos que baixou do servidor Rsync e recuperará a flag. Como você sincronizou os arquivos para o seu diretório atual, eles agora estão disponíveis localmente para você examinar.

Primeiro, use o comando ls para listar os arquivos no seu diretório atual e confirmar que flag.txt foi baixado.

ls

Você deverá ver flag.txt listado na saída.

flag.txt

Agora, use o comando cat para exibir o conteúdo de flag.txt. Isso revelará a flag que você precisa para completar o laboratório.

cat flag.txt

O terminal exibirá o valor da flag.

labex{rsync_an0nym0us_4cc3ss_fl4g}

Parabéns! Você identificou com sucesso um serviço Rsync mal configurado, enumerou seus compartilhamentos, baixou seu conteúdo e capturou a flag. Copie o valor da flag para completar o laboratório.

Resumo

Neste laboratório, você completou com sucesso uma avaliação de segurança de um serviço Rsync, passando da reconhecimento à exploração. Você aprendeu a:

  • Usar ping para estabelecer uma linha de base de conectividade de rede com um alvo.
  • Empregar nmap para realizar uma varredura de portas direcionada, identificando o serviço Rsync aberto e sua versão.
  • Interagir com um servidor Rsync para listar módulos publicamente disponíveis, um passo chave na enumeração.
  • Explorar uma má configuração de acesso anônimo para sincronizar arquivos do alvo para sua máquina local.
  • Localizar e recuperar uma flag dos arquivos baixados, completando o objetivo.

Este exercício demonstra um princípio de segurança crítico: serviços projetados para conveniência, como o Rsync, devem ser devidamente protegidos com autenticação e controles de acesso. Deixar um servidor Rsync aberto para acesso anônimo pode levar a violações de dados significativas. Ao entender esses vetores de ataque, você está mais preparado para proteger serviços de rede.