Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
SecureCodingDojo — O Secure Coding Dojo é uma plataforma para fornecer conhecimento de codificação segura. | Kitploit
Ferramentas/GitHubGitHub/owasp/securecodingdojo
Análise de VulnerabilidadesAnálise de CódigoSegurança WebCTFTestes de PenetraçãoDevSecOpsAutenticaçãoAprendizado e EducaçãoLabs e Prática
GitHubowasp/securecodingdojo

SecureCodingDojo

O Secure Coding Dojo é uma plataforma para fornecer conhecimento de codificação segura.

60715926há 11 mesesRevisado pelo Kitploit
Ver RepositórioSite

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

Sobre o Secure Coding Dojo

O Secure Coding Dojo é uma plataforma para fornecer treinamento em codificação segura. Embora venha com seu próprio aplicativo de treinamento vulnerável (o site Insecure.Inc), o portal de treinamento pode ser usado em conjunto com outros aplicativos de treinamento. A força da plataforma está na sua extensibilidade e na integração com a plataforma de colaboração de desenvolvimento comumente usada, o Slack. O portal de treinamento pode ser facilmente configurado na nuvem e as instruções para a configuração no AWS Elastic Beanstalk estão disponíveis abaixo.

Não deixe de verificar também a wiki para mais detalhes sobre a implantação e instalação do Dojo.

Demo

Baixe a demo para ter uma noção do portal de treinamento e do aplicativo Insecure.Inc.

Dê uma olhada também em /screenshots Texto alternativo

Experimente

Os passos a seguir fornecem a configuração básica do Dojo. Para configuração avançada e integrações, consulte a wiki

  • Instale a versão mais recente do Docker.

  • Faça um git clone do repositório

  • Mude o diretório para a raiz do repositório

  • Configure uma variável de ambiente DATA_DIR como ponto de montagem para os arquivos do dojo. Em *nix/mac, modifique o .bash_profile da seguinte forma:

    export DATA_DIR="/YOUR_DATA_DIR"

  • No Mac, você deve permitir que o Docker acesse este diretório em Docker > Preferences > File Sharing

  • Reinicie o terminal

  • Execute com:

    docker-compose up

Por que Outro Site de Treinamento em Segurança?

Embora sites de treinamento de código aberto para ensinar conceitos de segurança de aplicações não sejam novidade, o público-alvo desses sites tem sido pentesters e hackers éticos. O Secure Coding Dojo é pensado principalmente como uma plataforma de treinamento para desenvolvedores, e aqui está o porquê:

  • Integra-se com o Slack para autenticação
  • Permite agrupar os participantes de acordo com suas equipes de desenvolvimento
  • Permite que as equipes acompanhem o progresso e compitam entre si
  • Cada lição é construída como um par ataque/defesa. Os desenvolvedores podem observar as fraquezas do software conduzindo o ataque e, após resolverem o desafio, aprendem sobre as defesas de software associadas (blocos de código)
  • As lições predefinidas são baseadas nos erros de software mais perigosos do MITRE (também conhecidos como SANS 25), portanto o foco está nos erros de software, e não nas técnicas de ataque
  • Os desafios de hacking predefinidos são criados para o nível iniciante e mantêm os desenvolvedores engajados
    • Em outros sites de treinamento ou CTFs, há um aspecto de quebra-cabeça nos desafios, ótimo para o público pentester, mas que pode fazer alguns desenvolvedores perderem o interesse. No Secure Coding Dojo, o foco é demonstrar a vulnerabilidade.
    • Existem dicas que ajudam os desenvolvedores enquanto exploram o problema para não ficarem travados

SecureCodingDojo e Requisitos de Conformidade

Embora não garantamos conformidade, o treinamento pode ser usado para atender a requisitos de conformidade como PCI 6.5.a. Consulte o documento de currículo do Insecure.Inc sobre o mapeamento para SANS 25/ OWASP Top 10 / PCI 6.5

Pré-requisitos de Desenvolvimento

Portal de treinamento

  • Instale o VS Code
  • node/npm (desenvolvido com v10)
  • OPCIONAL: servidor MySQL + MySQL Workbench (desenvolvido com MySQL 5.7)

Insecure.Inc

  • Desenvolvido em Java EE
  • Versão mais recente do Eclipse Java EE (desenvolvido com Neon) + Java 1.8 + Tomcat 8 para o aplicativo de treinamento do Insecure.Inc

Instruções de Configuração do Ambiente de Desenvolvimento

Portal de treinamento

  • Mais detalhes na wiki

Insecure.inc

  • Mais detalhes na wiki

Compilação

Portal de treinamento

  • Execute o script ./buildTrainingPortal.sh. Ele criará uma imagem docker e um pacote AWS Elastic Beanstalk

Insecure.Inc

  • Clique com o botão direito no projeto para exportar como um arquivo .war e coloque-o na pasta /webapps da sua instalação do Tomcat 8.

Hospedando o Insecure.Inc

Consulte a wiki.

Implantando o Portal de Treinamento

Mais informações na wiki.

Instruções de Configuração do Slack

Você precisará criar um aplicativo Slack para autenticação.

  • Acesse https://api.slack.com/
  • Clique em Start Building e siga as instruções para criar um Slack App em sua equipe Slack de desenvolvimento
  • Depois que seu aplicativo for criado, você poderá obter suas credenciais do aplicativo para configurar seu config.json
  • Configure as URLs de redirecionamento em OAuth & Permissions. Por exemplo, para uma configuração localhost, a URL de redirecionamento seria: http://localhost:8081/public/slack/callback

Instruções de Configuração do Google

A autenticação do Google também pode ser configurada no config.json. Você precisará de uma conta de desenvolvedor do Google e obter as credenciais OAuth no console da API do Google: https://console.developers.google.com

No mesmo local, você configurará seu domínio e as URIs de redirecionamento autorizadas. Por exemplo, para uma configuração localhost, a URL de redirecionamento seria: http://localhost:8081/public/google/callback

Instruções de Configuração de Autenticação Local

Para equipes pequenas ou imagens pré-configuradas, a autenticação via Slack ou Google pode não ser uma opção. Nesse cenário, você pode configurar a autenticação usando um arquivo local simples.

Consulte a wiki para mais informações.

  • Copie localUsers.json.sample para localUsers.json
  • Adicione a linha no config.json que especifica o localUsersPath
  • Existem várias ressalvas com a autenticação local, como ausência de bloqueio de conta, expiração de senha etc.

Instruções de Configuração do Banco de Dados

Se você não configurar um banco de dados, o portal de treinamento usará apenas um banco de dados SQLite local.

Você também pode instalar o MySQL e criar um banco de dados e credenciais para esse banco. Anote seu nome de usuário e senha, pois precisará deles mais tarde.

Sementes de Chave de Criptografia e Variáveis de Ambiente

Você precisará configurar chaves de criptografia como variáveis de ambiente do sistema operacional. Em *nix/mac, modifique o .bash_profile da seguinte forma:

export ENC_KEY="put something random here"
export ENC_KEY_IV="put something random here"

O seguinte serve para impedir que os participantes gerem seus próprios códigos de desafio.

export CHALLENGE_MASTER_SALT="put something random here"

Estendendo o Secure Coding Dojo

Você pode adicionar novas lições seguindo o modelo das existentes.

Desafios

Os desafios são definidos em ./trainingportal/static/lessons O arquivo definitions.json aponta para a descrição html do desafio correspondente, o link de execução e os blocos de código correspondentes pelo id do bloco de código. Siga os exemplos já definidos para criar um novo.

Baixar ferramenta