Kit defensivo · teste o SEU app

Invada você mesmo antes que invadam seu app

Construiu um app com IA e não sabe o que ficou exposto? Rode a checagem, siga as cinco brechas e feche as portas — tudo numa cópia de teste, sem tocar na produção.

Banner do kit defensivo Invada seu próprio app
Em resumo

Invada seu próprio app é um kit de revisão defensiva com um verificador, cinco guias de brechas e prompts para organizar os resultados. É para quem construiu um app com IA e consegue editar o projeto, mas não trabalha com segurança todos os dias. Ele ajuda a procurar sinais de falhas, corrigir as regras do app e conferir o resultado antes de publicar. Para usar, você precisa de uma cópia isolada do seu app, dados inventados, duas contas fictícias e Python 3.

O que é

O que é

Um roteiro para revisar o seu app, corrigir uma falha por vez e registrar o que foi confirmado.

Painel ilustrado das cinco brechas abordadas pelo kit defensivo

🛡️ Checagem não destrutiva

Um único pedido de leitura busca sinais no HTML e no JavaScript inline, sem login, formulários ou redirecionamentos.

🛡️ Cinco brechas com correção

Cada guia explica o problema, um cenário controlado, a correção e como confirmar o resultado.

🛡️ Prompts prontos

Organize um teste de invasão simulado e um relatório visual com evidências, limites e prioridades.

Como funciona

Como funciona

Comece numa cópia isolada, revise as regras e repita tanto o cenário recusado quanto o uso legítimo.

Preparar cópia→ Rodar checa→ Ler as brechas→ Corrigir no servidor→ Confirmar
Pré-requisitos

Pré-requisitos

Prepare a cópia de teste e abra o terminal na pasta do projeto; o verificador usa Python 3, sem dependências adicionais.

Cópia isolada do app

Staging é uma cópia para testes. Use dados inventados, contas A e B, e-mail de teste e pagamentos simulados; desative integrações externas e faça backup da cópia.

# Checklist antes de qualquer acesso
URL e rotas autorizadas
Contas fictícias A e B
E-mail e pagamento de teste
Backup da cópia

Python 3

Confira a instalação no terminal; não é necessário instalar pacotes adicionais.

python3 --version

Arquivos do kit

Abra o terminal na raiz deste repositório, onde fica a pasta kit, e consulte as opções reais do verificador.

python3 kit/scripts/checa.py --help
Guia de uso · passo a passo

Guia de uso

Siga os seis passos na sua cópia de teste. O endereço dos comandos é ilustrativo: troque-o pela URL autorizada do seu app.

1

Prepare staging

Leia COMECE AQUI. Registre autorização, URL, rotas permitidas e responsável. Confirme os pré-requisitos acima; nunca use produção.

# Leia as instruções locais antes de testar
cat kit/COMECE-AQUI.md
2

Rode a checagem

Substitua a URL pela da sua cópia isolada. A flag declara sua permissão; o script não comprova propriedade nem isolamento. Ele faz um único GET, não segue redirecionamentos e só lê o HTML e o JavaScript inline da resposta. Indício não confirma falha; ausência de indícios não prova segurança.

python3 kit/scripts/checa.py --url https://staging.seu-app.test --eu-tenho-permissao
# Opcional: acrescente --json para saída estruturada
3

Leia as cinco brechas

Siga os documentos de 01 a 05 e registre evidências sem senhas, tokens ou dados pessoais.

  1. Reset de senha
  2. Avaliações e comentários
  3. Chatbot do site
  4. Checkout e preço
  5. E-mail e agente
# Leia os cinco documentos no terminal, se preferir
cat kit/brechas/*.md
4

Aplique a correção no servidor

Adapte os pseudocódigos ao seu app, uma mudança por vez, incluindo rotas alternativas. Para comentários, revise também a renderização segura em todas as telas. Repita o cenário recusado e o fluxo legítimo; confira banco, logs e estado final.

# Não existe comando universal de correção.
# Registro de cada achado:
brecha · rota · conta fictícia · evidência
risco · correção · reteste · responsável
5

Use o prompt numa cópia de teste

Abra o prompt de pentest e relatório visual. Copie o bloco e informe URL, rotas permitidas e isolamento antes de qualquer acesso. Comece pela leitura do código e checagens passivas; alterações de estado devem ser cenários simulados ou testes locais executados por você.

cat kit/prompts/pentest-do-seu-app.md
6

Confira o kit

Execute os testes offline do verificador. Eles não validam a segurança do seu app: essa confirmação depende dos retestes em staging e das evidências de cada brecha.

python3 kit/testes/run.py
Exemplos

As cinco brechas

Para cada uma, marque: aplicável, não aplicável ou pendente. Abra o documento para ver o cenário de teste e o reteste.

Reset de senha

Um ID enviado pelo navegador pode escolher a conta errada na troca de senha. Correção: No servidor, derive a conta apenas do token, com expiração e consumo único, impedindo dois usos simultâneos.

Avaliações e comentários

Conteúdo salvo pode ser interpretado como código no navegador de quem lê. Correção: Mostre comentários como texto e, se permitir formatação, filtre tags e atributos com um sanitizador baseado em uma lista de permissões.

Chatbot do site

Pedidos fora do negócio podem consumir sua cota de respostas. Correção: Valide o assunto antes da resposta e imponha no servidor limites de uso e orçamento independentes do modelo.

Checkout e preço

O servidor pode aceitar como preço final um valor alterado pelo comprador. Correção: Calcule o total no servidor e confira pedido, valor, moeda e status na confirmação do pagamento.

E-mail e agente

O agente pode confundir instruções recebidas por e-mail com ordens do dono. Correção: Trate mensagens como dados, limite permissões e exija confirmação humana para ações sensíveis no executor.

Vídeo

O kit explicado em vídeo

O caso real, as cinco portas comuns e como testar na sua cópia, em quatro minutos.

▶ Assistir no YouTube · Player com legendas e capítulos

Roadmap

Roadmap

O kit documenta o que está disponível hoje; novas brechas e modo CI não estão implementados nem têm prazo definido.

Hoje
Cinco brechas + checagem passivaGuias de correção, verificador com saída em texto ou JSON, prompts de revisão e relatório, exemplos locais e testes offline.
A avaliar
Mais brechas e integração contínuaPossíveis evoluções, sem compromisso de entrega: ampliar os cenários e um modo CI, para checagens automáticas a cada mudança no projeto.