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
blindxss-lite — Um coletor e servidor de payload leve para Blind XSS (Cross-Site Scripting) construído com Flask | Kitploit
Ferramentas/GitHubGitHub/yuyudhn/blindxss-lite
Ferramentas de PhishingGeração de PayloadsExploração de Aplicações WebExfiltração de DadosColeta de InformaçõesSegurança WebTestes de PenetraçãoComando e ControleUtilitários e FrameworksRed Teaming
GitHub
395há 19h 17mAinda 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
yuyudhn/blindxss-lite

blindxss-lite

Um coletor e servidor de payload leve para Blind XSS (Cross-Site Scripting) construído com Flask

Ver Repositório

blindxss-lite

Um coletor e servidor de payload Blind XSS (Cross-Site Scripting) leve, construído com Flask. Ele serve um payload JavaScript que captura dados do navegador da vítima (cookies, localStorage, trechos do DOM, etc.) e os encaminha para um dashboard com backend SQLite protegido por HTTP Basic Auth.

Recursos

  • Entrega de payload — /p.js serve um payload JS autocontido usando sendBeacon ou fetch
  • Endpoints de coleta — POST /c (JSON/FormData) e GET /c.gif (beacon de pixel compatível com CSP)
  • Dashboard administrativo — /events lista os eventos capturados, /events/<id>/view mostra os detalhes completos
  • Gerador de payload — /payloads oferece 14 variantes de payload XSS além de um editor JS personalizado
  • HTTP Basic Auth — rotas administrativas protegidas por ADMIN_USER / ADMIN_PASSWORD
  • Persistência em SQLite — banco de dados criado automaticamente na primeira execução; excluir bxss.db o reconstrói do zero
  • Pronto para Docker — Dockerfile e docker-compose.yml incluídos
  • Limitação de taxa — limitador de janela deslizante com backend SQLite para os endpoints de coleta (compartilhado entre workers)

Início Rápido

Docker Compose

# Set credentials
echo "ADMIN_USER=admin" > .env
echo "ADMIN_PASSWORD=your-admin-password" >> .env

# Build and run
docker compose up -d --build

Dashboard: http://127.0.0.1:8089/events (o navegador solicitará Basic Auth)

Sem Docker

pip install -r requirements.txt
export ADMIN_USER="admin"
export ADMIN_PASSWORD="your-admin-password"
gunicorn -b 127.0.0.1:8080 --workers 2 --threads 4 wsgi:app

Uso

  1. Acesse /payloads (após autenticar) para copiar um payload XSS.
  2. Injete o payload em um campo de entrada alvo suspeito de Blind XSS.
  3. Quando uma vítima carrega a página, o payload é executado e envia os dados dela para o seu servidor.
  4. Visualize os eventos capturados em /events.

Endpoints

Coletor (público, sem autenticação)

MétodoCaminhoDescrição
GET/p.jsJavaScript do payload XSS
POST/cRecebe JSON/FormData do payload
GET/c.gifPixel beacon (compatível com CSP)

Admin (HTTP Basic Auth)

MétodoCaminhoDescrição
GET/eventsÚltimos 500 eventos
GET/events/<id>Detalhe do evento em JSON
GET/events/<id>/viewDetalhe do evento em HTML
GET/POST/payloadsGerador de payload + editor de JS personalizado

Utilitário

MétodoCaminhoDescrição
GET/_healthzVerificação de integridade

Configuração

VariávelPadrãoDescrição
ADMIN_USERadminNome de usuário do painel
ADMIN_PASSWORD(obrigatório)Senha do painel — a inicialização falha se não for definida
DB_PATH./bxss.dbCaminho do banco de dados SQLite
PUBLIC_URL(vazio)URL base pública para os payloads gerados (use quando estiver atrás de um túnel/proxy reverso; recorre ao host da requisição)
TRUST_PROXY(vazio)Defina 1 para confiar em X-Forwarded-For/CF-Connecting-IP para o IP do cliente (apenas quando atrás de um proxy reverso confiável; necessário nesse caso, ou todos os clientes compartilharão o IP do proxy para limitação de taxa)
MAX_BODY524288Tamanho máximo do corpo do coletor (bytes)
RATE_LIMIT_COUNT60Máximo de requisições ao coletor por janela (por IP)
RATE_LIMIT_WINDOW60Janela de limitação de taxa em segundos
LOG_LEVELINFONível de logging do Python

O JS personalizado é editado e armazenado pela página de administração /payloads (persistido na tabela settings do SQLite) e anexado a /p.js. Ele não é mais lido de um arquivo.

Estrutura do Projeto

blindxss-lite/
├── wsgi.py              # WSGI entry point
├── requirements.txt     # Python dependencies
├── Dockerfile           # Container image
├── docker-compose.yml   # Compose config
├── .env                 # Credentials (don't commit)
└── app/
    ├── __init__.py      # App factory, CORS, health check
    ├── config.py        # Config + .env loader
    ├── db.py            # SQLite layer
    ├── collectors.py    # /p.js, /c, /c.gif
    ├── events.py        # /events admin
    ├── payloads.py      # /payloads admin
    ├── utils.py         # Helpers + Basic Auth decorator
    ├── static/
    │   └── style.css
    └── templates/
        ├── events.html
        ├── event.html
        └── payloads.html

Dados de Payload Coletados

  • Título e URL do documento
  • Origem e referenciador
  • document.cookie
  • User agent
  • localStorage e sessionStorage (todas as chaves)
  • Trecho do DOM (primeiros 200KB, comprimido com zlib+base64)

Demonstração

Payloads: Página de Payload

Resultado:

Detalhe do resultado:

Notas de Segurança

  • As rotas de administração exigem HTTP Basic Auth. Use uma senha forte em produção.
  • Os endpoints do coletor são intencionalmente não autenticados.
  • Todas as origens são permitidas para CORS, para que os payloads possam enviar dados de qualquer site.
  • A limitação de taxa baseada em SQLite ajuda a mitigar o abuso do coletor e é compartilhada entre os workers.
  • O arquivo .env nunca deve ser commitado no controle de versão.
Baixar ferramenta