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
BreakEscape — Motor Rails montável que fornece mais de 24 cenários de escape room em cibersegurança com senhas aleatórias, diálogo de NPC compilado em JIT e API RESTful para gerenciamento de estado do jogo. Projetado para treinamento prático de segurança. | Kitploit
Ferramentas/GitHubGitHub/cliffe/breakescape
Segurança WebCTFTestes de PenetraçãoAprendizado e EducaçãoTrilhas e CursosLabs e Prática
GitHubcliffe/breakescape

BreakEscape

Motor Rails montável que fornece mais de 24 cenários de escape room em cibersegurança com senhas aleatórias, diálogo de NPC compilado em JIT e API RESTful para gerenciamento de estado do jogo. Projetado para treinamento prático de segurança.

Ver Repositório
624há 8 diasAinda não revisado

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

BreakEscape Rails Engine

Jogo de sala de fuga de treinamento em cibersegurança como um Rails Engine montável.

Funcionalidades

  • 24+ cenários de sala de fuga de cibersegurança
  • Rastreamento de progresso no servidor com esquema de 2 tabelas
  • Senhas aleatórias por instância de jogo via ERB
  • Compilação JIT de scripts Ink para diálogo de NPCs
  • Suporte a jogador polimórfico (User/DemoUser)
  • Autorização via Pundit
  • API RESTful para gerenciamento de estado do jogo
  • Persistência de estado baseada em sessão

Instalação

No seu Gemfile:

root@kitploit:~
gem 'break_escape', path: 'path/to/break_escape'

Então:

root@kitploit:~
bundle install
rails break_escape:install:migrations
rails db:migrate
rails db:seed  # Opcional: cria missões a partir de cenários

Montagem no Aplicativo Hospedeiro

No seu config/routes.rb:

root@kitploit:~
mount BreakEscape::Engine => "/break_escape"

Uso

Modo Autônomo (Desenvolvimento)

root@kitploit:~
export BREAK_ESCAPE_STANDALONE=true
rails server
# Visite http://localhost:3000/break_escape/

Modo Montado (Produção)

Monte no Hacktivity ou em outro aplicativo Rails. O motor usará o current_user do aplicativo hospedeiro via Devise.

Configuração

root@kitploit:~
# config/initializers/break_escape.rb
BreakEscape.configure do |config|
  config.standalone_mode = false  # true para desenvolvimento
  config.demo_user_handle = 'demo_player'
end

Esquema do Banco de Dados

  • break_escape_missions - Metadados do cenário (name, display_name, published, difficulty)
  • break_escape_games - Estado do jogador + snapshot do cenário (JSONB)
  • break_escape_demo_users - Apenas modo autônomo (opcional)

Endpoints da API

  • GET /games/:id/scenario - JSON do cenário (gerado por ERB)
  • GET /games/:id/ink?npc=X - Script do NPC (compilado JIT a partir de .ink)
  • GET /games/:id/bootstrap - Dados iniciais do jogo
  • PUT /games/:id/sync_state - Sincronizar estado do jogador
  • POST /games/:id/unlock - Validar tentativa de desbloqueio
  • POST /games/:id/inventory - Atualizar inventário

Arquitetura

Geração de Cenários ERB

Os cenários são armazenados como templates .json.erb e renderizados sob demanda com valores aleatórios:

  • <%= random_password %> - Gera senha única por jogo
  • <%= random_pin %> - Gera PIN único de 4 dígitos
  • <%= random_code %> - Gera código hex único

Compilação JIT de Ink

Scripts de diálogo de NPCs compilam na primeira requisição (~300ms):

  1. Verificar se .json existe e é mais novo que .ink
  2. Se necessário, executar inklecate para compilar
  3. Armazenar em cache o JSON compilado para requisições subsequentes

Gerenciamento de Estado

Estado do jogador armazenado na coluna JSONB:

  • Sala atual e salas desbloqueadas
  • Inventário e itens coletados
  • Encontros com NPCs
  • Variáveis globais (sincronizadas com o cliente)
  • Saúde e estado de minigame

Testes

CI

Os testes são executados automaticamente no GitHub Actions. O Gemfile.lock commitado fixa as versões exatas das gems utilizadas.

Localmente com acesso à rede

root@kitploit:~
bundle install
bundle exec rails db:create db:migrate RAILS_ENV=test
bundle exec rails test

Localmente sem acesso à rede

O motor vem com um script bin/setup que inicializa o bundle a partir de um checkout irmão do Hacktivity (que já possui todas as gems necessárias empacotadas):

root@kitploit:~
# Da raiz do BreakEscape — Hacktivity deve estar em ../Hacktivity
bin/setup
bundle exec rails test

# Se Hacktivity estiver em outro local, defina HACKTIVITY_DIR:
HACKTIVITY_DIR=/path/to/Hacktivity bin/setup

bin/setup copia os arquivos .gem resolvidos para vendor/cache/ e executa bundle install --local. Os diretórios vendor/cache/ e vendor/bundle/ estão no .gitignore; apenas Gemfile.lock é commitado.

Documentação

Consulte HACKTIVITY_INTEGRATION.md para o guia de integração.

Agradecimentos

Muitos agradecimentos a todos que contribuíram para o projeto. Consulte o histórico no GitHub.

  • Este projeto é apoiado por recursos do Cyber Security Body of Knowledge (CyBOK) em torno da bolsa CyBOK 1.1 (2023-2024).
  • Este projeto é apoiado por recursos do Cyber Security Body of Knowledge (CyBOK) em torno da bolsa CyBOK 1.1 (2024-2025).
  • Este projeto é apoiado por recursos do Cyber Security Body of Knowledge (CyBOK) em torno da bolsa Security-Informed Safety (2025-2026).
Baixar ferramenta