Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
vucsa — Aplicação cliente-servidor deliberadamente vulnerável para aprendizado de testes de penetração em clientes thick não HTTP. Inclui desafios de SQL injection, RCE, ataques XML, buffer over-read e vulnerabilidades de controle de acesso. | Kitploit
Ferramentas/GitHubGitHub/warxim/vucsa
Análise de VulnerabilidadesExploração de Aplicações WebCTFTestes de PenetraçãoAprendizado e EducaçãoExploração de Binários
GitHubwarxim/vucsa

vucsa

Aplicação cliente-servidor deliberadamente vulnerável para aprendizado de testes de penetração em clientes thick não HTTP. Inclui desafios de SQL injection, RCE, ataques XML, buffer over-read e vulnerabilidades de controle de acesso.

Ver Repositório
10128há 2 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

Aplicação Vulnerável Cliente-Servidor (VuCSA)

Aplicação Vulnerável Cliente-Servidor (VuCSA)

A Aplicação Vulnerável Cliente-Servidor (VuCSA) foi criada para aprender/apresentar como realizar testes de penetração em aplicações cliente-servidor não HTTP. É escrita em Java (com interface gráfica JavaFX).

Atualmente, a aplicação vulnerável contém os seguintes desafios:

  1. Buffer Over-read (simulado)
  2. Execução de Comandos
  3. Injeção SQL
  4. Enumeração
  5. XML
  6. Controlo de Acesso Horizontal
  7. Controlo de Acesso Vertical
  8. RCE por Desserialização

Se quiser saber como resolver estes desafios, consulte o site do PETEP, que descreve como usar a ferramenta open-source PETEP para explorá-los.

Dica 1: Antes de começar a hackear, não se esqueça de verificar a estrutura de dados das mensagens abaixo. Ao modificar o tráfego de rede, provavelmente terá que considerar a estrutura, especialmente os bytes de comprimento do payload.

Dica 2: A maioria dos desafios pode ser explorada através da modificação do tráfego de rede. Portanto, é recomendado usar um proxy TCP ou hooks de processo para os testes.

Dica 3: Alguns desafios possuem validação de entrada e restrições, o que é comum em thick clients, mas isso não significa que o servidor use a mesma validação.

Vulnerabilidade de Buffer Over-read (simulado)

Neste desafio, o seu objetivo é manipular o tráfego de rede entre o cliente e o servidor de forma que leve a um buffer over-read.

Vulnerabilidade de Execução de Comandos

O desafio de execução de comandos representa uma vulnerabilidade de execução de comandos muito simples. O objetivo é executar um comando malicioso no servidor.

Vulnerabilidade de Injeção SQL

O desafio de injeção SQL contém um campo de pesquisa vulnerável a injeção SQL, mas como notará em breve, a entrada não permite inserir os caracteres necessários.

Vulnerabilidade de Enumeração

O desafio de enumeração é baseado num formulário de login simulado que não está protegido contra enumeração. Conseguirá encontrar todos os 5 utilizadores e adivinhar as suas palavras-passe?

Vulnerabilidades XML

Neste desafio, pode encontrar várias vulnerabilidades XML:

  • Ataque de Entidade Externa XML (Injeção XXE)
  • Ataque XInclude
  • Ataque Bomba XML

Vulnerabilidade de Controlo de Acesso Horizontal

O desafio de controlo de acesso horizontal representa um leitor de documentos que permite ao utilizador ver os seus próprios documentos e ler o seu conteúdo. O objetivo é encontrar 5 documentos de outros utilizadores.

Vulnerabilidade de Controlo de Acesso Vertical

O desafio de controlo de acesso vertical é baseado num painel de utilizador simulado, que mostra informações básicas do utilizador. O objetivo é encontrar uma funcionalidade de administrador oculta e verificar se é possível usá-la como um utilizador Convidado.

Vulnerabilidade de RCE por Desserialização

A vulnerabilidade de RCE por desserialização utiliza desserialização/serialização Java para transmitir dados através da rede. A aplicação contém dois caminhos que pode usar para alcançar execução remota de código através da vulnerável desserialização Java.

Pode encontrar ambos os caminhos examinando o ficheiro JAR do servidor ou consultando o código fonte.

O objetivo é criar exploits para ambos os caminhos e executar um comando malicioso no servidor.

Dica: Pode usar o JAR do servidor como biblioteca para facilitar a criação do exploit.

Requisitos

Precisa de Java 11 ou versão mais recente para executar o VuCSA.

Nota: Para Mac com arquitetura ARM64 (chips M1, M2), use a build especial para Java 17.

Como Executar

Para executar o servidor e o cliente vulneráveis, pode usar um dos lançamentos no GitHub ou executar o gradle assemble, que cria pacotes de distribuição (para Windows e Unix). Estes pacotes contêm scripts sh/bat que executarão o servidor e o cliente usando a JVM:

root@kitploit:~
# Linux / Mac
chmod +x client.sh server.sh
./client.sh
./server.sh

# Windows
client.bat
server.bat

Nota: Estes scripts de execução contêm variáveis úteis, incluindo o caminho para o executável Java. Pode precisar de alterá-lo se não o tiver no PATH ou se usar várias versões de Java.

Configuração de Execução

A configuração do servidor é criada automaticamente se não existir e depois é carregada a partir de server.json no mesmo diretório onde o servidor está a ser executado:

root@kitploit:~
{
  "network": {
    "serverHost": "0.0.0.0",
    "serverPort": 8765
  }
}

A configuração do cliente pode ser especificada na aplicação em execução.

Estrutura do Projeto

O projeto está dividido em três módulos:

  • vucsa-common - funcionalidade comum para cliente e servidor (incluindo utilitários de processamento de protocolo)
  • vucsa-client - cliente vulnerável com GUI JavaFX
  • vucsa-server - servidor vulnerável para uso em terminal

Estrutura de Dados

As mensagens transmitidas entre servidor e cliente têm o seguinte formato simples:

root@kitploit:~
[tipo][alvo][comprimento][payload]
  32b    32b      32b       ???

Estas quatro partes têm o seguinte significado:

  • tipo - tipo da mensagem (usado para serialização/desserialização)
  • alvo - o handler alvo que receberá a mensagem (identificador)
  • comprimento - comprimento do payload
  • payload - dados serializados em bytes

Para enviar payloads personalizados, pode ter que atualizar o comprimento do payload. Caso contrário, não funcionará corretamente. No tutorial, é desenvolvido um script automático para corrigir automaticamente os bytes de comprimento do payload.

Tutorial (Soluções)

A Aplicação Vulnerável Cliente-Servidor (VuCSA) contém múltiplas vulnerabilidades, que podem ser exploradas de várias formas. O guia oficial para explorar estas vulnerabilidades usa o proxy de testes de penetração open-source (consultar Metodologia PETEP).

Na metodologia PETEP, todo o processo de exploração dos desafios é explicado, incluindo payloads úteis.

Baixar ferramenta