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
svja — The Super Vulnerable Java Application (SVJA), as demonstrated in the Roniel and DaRon Podcast Show, is an Apache Struts application designed to contain a number of highly common vulnerabilities. Unlike other "purposefully vulnerable" software, this software is designed to mimic common vulnerabilities in the same way that they are often seen, rather than in either an overly simplistic manner or a more "capture the flag" manner. This software is semi-routinely updated and added upon, with demonstrations of some of the vulnerabilities as part of the podcast. | Kitploit
Ferramentas/GitHubGitHub/theronielanddaronpodcastshow/svja
Authentication & AuthorizationVulnerability AnalysisWeb Application ExploitationAPI Security TestingWeb SecurityPenetration TestingLearning & EducationLabs & Practice

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 →

Sobre

GitHub
theronielanddaronpodcastshow/svja

svja

Ver Repositório
134há 7 mesesAinda não revisado

The Super Vulnerable Java Application (SVJA), as demonstrated in the Roniel and DaRon Podcast Show, is an Apache Struts application designed to contain a number of highly common vulnerabilities. Unlike other "purposefully vulnerable" software, this software is designed to mimic common vulnerabilities in the same way that they are often seen, rather than in either an overly simplistic manner or a more "capture the flag" manner. This software is semi-routinely updated and added upon, with demonstrations of some of the vulnerabilities as part of the podcast.

Compartilhar

svja

A RDPS Super Vulnerable Java Application é exatamente isso — uma aplicação Java super vulnerável criada para o benefício de todos verem uma variedade de vulnerabilidades comuns, muitas vezes "complexas". Este software foi criado como parte do Roniel and DaRon Podcast Show (https://www.youtube.com/channel/UCbj1JFcSJeTuf3qf9GPRemA) para que pudéssemos discutir e mostrar várias vulnerabilidades que encontrávamos com frequência de uma forma mais realista do que o que você verá com muitas outras ferramentas online. Para ver exemplos de exploração, assista ao nosso podcast.

IMPORTANTE

Lembre-se de que esta aplicação foi projetada para ser altamente vulnerável a várias coisas. Tenha cuidado onde a executa, limite quem pode acessá-la (o servidor Tomcat deve escutar apenas em localhost e apenas na sua máquina pessoal). Não somos responsáveis se você não conseguir cuidar adequadamente das suas coisas, deixando sua cópia exposta para qualquer um roubar seus dados ou comprometer gravemente sua máquina. Recomendamos que você a execute em uma máquina virtual (VM) que seja segura, que não contenha nada sensível e que não tenha conectividade com a internet. A falha em proteger adequadamente o sistema que executa isso e a instância resultará provavelmente em um dia ruim para você. Como relações carnais casuais sem as devidas proteções, você está apenas se colocando em uma posição da qual se arrependerá um dia. Considere-se avisado, mas encorajado a brincar ;-)

Requisitos

  • Apache Maven 3.6 ou superior
  • Java 21 ou superior
  • Tomcat 10.0 ou superior

Instalação

A RDPS SVJA é composta por uma aplicação Java Struts 2 rodando React. Ela é construída simplesmente executando: mvn clean package

Isso cria um WAR em target -- svja.war. Basta colocar o WAR na sua pasta webapps do Tomcat. Em uma instalação padrão do Tomcat, acesse http://127.0.0.1:8080/svja para acessar a aplicação.

Se você estiver usando Tomcat 10 ou superior, adicione <Loader jakartaConverter="TOMCAT" /> ao seu arquivo de configuração context.xml do Tomcat.

Swagger UI

Para aqueles que desejam usá-lo para começar, a raiz (http://127.0.0.1:8080/svja) agora conta com Swagger UI e uma especificação OpenAPI básica (http://127.0.0.1:8080/svja/specification.yaml) que você pode usar. Observe que a especificação, e portanto o Swagger UI, apenas arranha a superfície (é para isso que serve a desserialização insegura, não é?).

Vulnerabilidades atuais

Abaixo estão algumas das principais vulnerabilidades do sistema, por ação.

  1. /api/authenticate
    • Falsificação de solicitação entre sites (CSRF)
    • Negação de serviço (DOS)
    • Desserialização insegura (OGNL, Struts, JSON -- sem bytecode)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
    • Injeção de log
    • Dados sensíveis na URL
  2. /api/authenticate/federated
    • Falsificação de solicitação entre sites (CSRF)
    • Negação de serviço (DOS)
    • Desserialização insegura (OGNL, Struts, JSON -- sem bytecode)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
    • Injeção de log
    • Injeção de expressão regular
      • Bypass de autenticação
      • Negação de serviço
  3. /api/files
    • Falsificação de solicitação entre sites (CSRF)
    • Cross-site scripting (XSS) via codificação
    • Negação de serviço (DOS)
    • Desserialização insegura (OGNL, Struts, JSON -- sem bytecode)
      • Navegação de caminho (somente leitura)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
      • Referência direta insegura a objetos
    • Serialização insegura
      • Vazamento de informações pessoais identificáveis (PII)
      • Vazamento de informações sensíveis
    • Injeção de log
    • Condição de corrida
      • Tempo de verificação, tempo de uso (TOCTOU)
    • Dados sensíveis na URL
  4. /api/projects
    • Injeção de CSV (Comma Separated Values)
      • Injeção arbitrária de CSV
      • Ataques do lado do cliente
    • Falsificação de solicitação entre sites (CSRF)
    • Cross-site scripting (XSS) via codificação Negação de serviço (DOS)
    • Desserialização insegura (OGNL, Struts, JSON -- sem bytecode)
      • Navegação de caminho (somente leitura)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
      • Referência direta insegura a objetos

Usuários instalados por padrão

root@kitploit:~
admin:admin (conta de administrador da aplicação)
bill:baker (conta de usuário privilegiado)
bob:barker (conta básica de usuário somente leitura)

Fazendo login no sistema

root@kitploit:~
/api/authenticate?user.username=admin&user.password=admin
/api/authenticate?user.username=bill&user.password=baker
/api/authenticate?user.username=bob&user.password=barker

Após a autenticação, acesse qualquer ação que desejar usando JSON ou Struts

Exemplo de solicitação de autenticação Struts

root@kitploit:~
GET /svja/api/authenticate?user.username=bill&user.password=baker HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Length: 0
DNT: 1
Connection: close
Cache-Control: max-age=0


Exemplo de solicitação de autenticação JSON

root@kitploit:~
GET /svja/api/authenticate HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 61
DNT: 1
Connection: close
Cache-Control: max-age=0

{
  "user": {
    "username": "bill",
    "password": "baker"
  }
}

Exemplo de solicitação de autenticação "federada" Struts

root@kitploit:~
GET /svja/api/authenticate/federated?user.username=bill%40rdps.local&usernameTranslationRegex=%2F%40rdps%5B.%5Dlocal%2F%2F HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Length: 0
DNT: 1
Connection: close
Cache-Control: max-age=0


Exemplo de solicitação de autenticação "federada" JSON

root@kitploit:~
GET /svja/api/authenticate/federated HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 61
DNT: 1
Connection: close
Cache-Control: max-age=0

{
  "user": {
    "username": "[email protected]"
  },
  "usernameTranslationRegex": "/@rdps[.]local//"
}

Exemplo de solicitação Struts

Lembre-se de alterar o svjatoken

root@kitploit:~
GET /svja/api/projects?projectId=1 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Cookie: svjatoken=RaMu5vhFBgL8goV6Ja1ffLnpmcixNuAL7fUP;
Cache-Control: max-age=0


Exemplo de solicitação JSON

Lembre-se de alterar o svjatoken

root@kitploit:~
GET /svja/api/projects HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 19
DNT: 1
Connection: close
Cookie: svjatoken=RaMu5vhFBgL8goV6Ja1ffLnpmcixNuAL7fUP;
Cache-Control: max-age=0

{
  projectId:1
}

Lembre-se

Este é um trabalho em andamento e temos muitas outras vulnerabilidades e coisas planejadas (incluindo um frontend super vulnerável e outras aplicações super vulneráveis) — volte a nos visitar a cada dois meses e assista ao Roniel and DaRon Podcast Show para atualizações, exemplos de exploração e outras ideias. Também encorajamos você a tentar descobrir como mitigar ou corrigir as vulnerabilidades... quebrar coisas é fácil... mitigar, corrigir e proteger é que é difícil. Boa sorte e boas caçadas!

Baixar ferramenta
  • Serialização insegura
    • Vazamento de informações pessoais identificáveis (PII)
    • Vazamento de informações sensíveis
  • Injeção de log
  • Dados sensíveis na URL
  • Injeção de XLSX
    • Injeção arbitrária de XML
    • Ataques do lado do cliente
  • /api/reflect
    • Reflexão de uso
    • Desserialização insegura (OGNL, Struts, JSON -- sem bytecode)
      • Navegação de caminho (somente leitura)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
      • Referência direta insegura a objetos
    • Serialização insegura
      • Vazamento de informações pessoais identificáveis (PII)
      • Vazamento de informações sensíveis
    • Injeção de log
  • /api/supersecret
    • Modo de cifra fraca
    • Padding oracle
    • Reflexão de uso
    • Desserialização insegura (OGNL, Struts, JSON)
      • Navegação de caminho (somente leitura)
      • Criação arbitrária de objetos
      • Chamada arbitrária de métodos
      • Sequestro de sessão
      • Bypass de sessão
      • Bypass de autenticação
      • Referência direta insegura a objetos
    • Serialização insegura
      • Vazamento de informações pessoais identificáveis (PII)
      • Vazamento de informações sensíveis
    • Injeção de log