XLabs Security · Boletim de exposição em campo · ED. 2026.04.23

O mesmo servidor, três bordas, uma planilha de cicatrizes.

Mantemos esta aplicação publicada de propósito, com vulnerabilidades conhecidas e instrumentação completa. O mesmo binário responde por quatro subdomínios — cada um atrás de uma camada de proteção diferente. O que cada borda deixa passar é registrado, classificado e comparado.

Quatro subdomínios apontando para a mesma origem

O modo é resolvido pelo cabeçalho Host de cada requisição. Não há reconfiguração da aplicação ao trocar de cenário — apenas o DNS muda.

Subdomínio Cenário Modo
honey-pot.net Tráfego passando pelo Cloudflare em plano gratuito (CDN + regras básicas). Bloqueia parte dos ataques mais óbvios. Cloudflare Free
www.honey-pot.net Servidor exposto diretamente, sem qualquer camada de proteção. Cenário usado como linha de base do experimento. SEM WAF
cffree.honey-pot.net Tráfego passando pelo Cloudflare em plano gratuito (CDN + regras básicas). Bloqueia parte dos ataques mais óbvios. Cloudflare Free
xlabs.honey-pot.net Tráfego protegido pela suíte XLabs Pro: WAF gerenciado, regras OWASP, anti-bot e CDN com mitigação L7 sob medida. XLabs Pro

Registros vulneráveis publicados

Cada entrada abaixo é um alvo intencional. Ataques que cheguem até a origem são gravados em AttackLog com modo, IP, payload e classificação.

  1. REG-01

    Catálogo legado com identificador injetável

    O parâmetro ?id= entra direto em um SELECT. Qualquer payload UNION ou booleano funciona contra um SQLite isolado.

    GET /produtos/?id=1
    SQL Injection
  2. REG-02

    Busca interna que reflete sem sanitização

    O termo digitado é renderizado com |safe. Suficiente para tags <script>, onerror, svg e variantes.

    GET /buscar/?q=...
    XSS Refletido
  3. REG-03

    Login legado com SQL concatenado

    O formulário monta a query por concatenação de strings. Aceita ' OR '1'='1 -- em qualquer dos campos.

    POST /login/
    Auth bypass
  4. REG-04

    Arquivo de ambiente publicado por engano

    Conteúdo plausível com chaves fictícias de banco, JWT, Stripe e AWS - alvo clássico de exfiltração e reconhecimento.

    GET /.env
    Leak
  5. REG-05

    Diretório .git/ servido pela web

    HEAD, config e index expostos. Marcador clássico de pipeline de deploy mal configurado.

    GET /.git/config · /.git/HEAD · /.git/index
    Leak
  6. REG-06

    Painel administrativo legado sem autenticação

    Página interna deixada em produção. O simples acesso já é sinal forte de reconhecimento.

    GET /admin-legacy/
    Recon
  7. REG-07

    wp-login.php como chamariz

    Endpoint clássico de varredura de WordPress, mantido para detectar bots de força bruta e fingerprint.

    GET /wp-login.php
    Recon
  8. REG-08

    phpinfo() como info disclosure

    Página fictícia de diagnóstico. Tipicamente bloqueada por regras OWASP em qualquer WAF gerenciado.

    GET /phpinfo.php
    Info disclosure
  9. REG-09

    backup.sql esquecido na raiz

    Dump SQL fictício, alvo recorrente de exfiltração automática. Útil para medir bots que varrem por extensões comuns.

    GET /backup.sql
    Leak
  10. REG-10

    Visualizador com Local File Inclusion

    O parâmetro ?file= resolve caminhos absolutos e travessias ../ contra uma pseudo-raiz com arquivos clássicos (passwd, hosts, /proc/self/environ, .env).

    GET /visualizar/?file=...
    LFI
  11. REG-11

    Path traversal em endpoint de download

    Central de relatórios que aceita ?arquivo= sem normalização. Exfiltra qualquer caminho válido como anexo.

    GET /baixar/?arquivo=...
    Path Traversal
  12. REG-12

    Proxy de preview com SSRF

    Aceita ?url= arbitrária para "pré-visualizar" conteúdo. Alvos típicos: metadata cloud, redes internas, esquemas file://, gopher://.

    GET /proxy/?url=...
    SSRF
  13. REG-13

    Ferramenta ping com Command Injection

    Formulário de diagnóstico que aceita metacaracteres de shell. Demonstra ;, |, &&, $() e backticks contra um shell-out simulado.

    POST /ferramentas/ping/
    RCE
  14. REG-14

    Open Redirect via parâmetro ?url=

    Aceita qualquer destino externo, sem allow-list. Vetor clássico de phishing apoiado em domínio "confiável".

    GET /ir/?url=...
    Open Redirect
  15. REG-15

    Server-Side Template Injection no preview

    Editor de "post" que avalia o template no servidor. Detecta {{ var }}, {% tag %}, ${expr} e <%= var %> com contexto fictício de segredos.

    GET /preview/?body=...
    SSTI
  16. REG-16

    Outras iscas de arquivos sensíveis

    .aws/credentials, .htpasswd, wp-config.php, web.config, server-status, composer.json e .svn/entries — alvos recorrentes de scanners e bots de varredura.

    GET /.aws/credentials, /.htpasswd, /wp-config.php, ...
    Leaks

Vitrines de produtos com falhas amplamente exploradas

Cada bait abaixo imita só a fachada de um produto vulnerável real. Nenhum código do exploit é executado — sem chamadas JNDI, sem leitura do sistema de arquivos, sem desserialização. Quando um scanner casa com a assinatura, o evento entra em AttackLog com a categoria cve e o identificador correspondente em notes. A documentação completa dos limites de cada isca está em docs/CVES-CONTROLADAS.md.

  1. REG-17

    Oracle WebLogic wls-wsat — XMLDecoder RCE

    WSDL fictício do componente WSAT. Detecta POST com java.beans.XMLDecoder, ProcessBuilder ou void class="..." no corpo SOAP.

    POST /wls-wsat/CoordinatorPortType
    CVE-2017-10271
  2. REG-18

    Log4Shell — Log4j JNDI lookup em qualquer cabeçalho

    A assinatura casa com ${jndi:ldap://...}, ${jndi:rmi://}, ${jndi:dns://} e variantes obfuscadas (${${::-j}ndi:) em User-Agent, Referer, query string ou body.

    qualquer rota · cabeçalho ou payload com ${jndi:...}
    CVE-2021-44228
  3. REG-19

    Spring4Shell — gravação via class.module.classLoader

    Detecta payloads class.module.classLoader.resources.context.parent.pipeline.first.* em formulários POST, mesmo quando codificados com %2e ou [ entre colchetes.

    qualquer rota · POST com class.module.classLoader.*
    CVE-2022-22965
  4. REG-20

    Atlassian Confluence — template injection em text-inline.vm

    Página HTML que parodia o Confluence Data Center. Detecta payloads OGNL/Velocity como $stack.findValue("..."), %7B%7Bnew%20freemarker e variantes com label + value arbitrário.

    POST /template/aui/text-inline.vm
    CVE-2023-22527
  5. REG-21

    Palo Alto GlobalProtect — SESSID com path traversal

    Replica a tela de login do PAN-OS GlobalProtect. Detecta cookies SESSID=../../../../ e nomes de arquivo de telemetria escritos pelo exploit (panlogs.tdb).

    GET /global-protect/login.esp · cookie SESSID
    CVE-2024-3400
  6. REG-22

    PHP-CGI — argument injection via soft-hyphen (%AD)

    Página falsa de phpinfo(). Detecta o byte 0xAD (soft hyphen) em qualquer codificação — %AD, %c2%ad, byte cru ou caractere de substituição — combinado com flags -d, auto_prepend_file ou allow_url_include.

    GET /php-cgi/php-cgi.exe?-d+...
    CVE-2024-4577
  7. REG-23

    Jenkins CLI — leitura arbitrária via @arquivo

    Resposta texto/plain imitando o handshake do Jenkins CLI. Detecta o uso de @/etc/passwd, @/etc/shadow ou comandos connect-node/who-am-i com argumento iniciado por @.

    POST /cli · argumento começando com @
    CVE-2024-23897
  8. REG-24

    GeoServer OWS — OGNL/JXPath em valueReference

    XML estilo WFS Capabilities. Detecta exec(java.lang.Runtime.getRuntime(),...), org.springframework e Runtime.getRuntime().exec( dentro do parâmetro valueReference.

    GET /geoserver/ows · /geoserver/wfs · /geoserver/wms
    CVE-2024-36401
  9. REG-25

    Ivanti Connect Secure — paths de reconhecimento /dana-na/

    Página HTML que simula o portal "Ivanti Secure Access". Detecta o trio de URLs usado no estágio inicial do CVE-2025-0282 (welcome, login, getComponent) sem expor nenhum binário real.

    GET /dana-na/auth/url_default/welcome.cgi
    CVE-2025-0282
  10. REG-26

    Apache Tomcat /manager — desserialização de sessão (PUT)

    Tela 401 do Tomcat Manager. Detecta PUT com sufixo .session, aced0005 (header de objeto Java) ou caminhos com /.. característicos do CVE-2025-24813.

    PUT /manager/html/<arquivo>.session
    CVE-2025-24813
  11. REG-27

    React2Shell — Server Actions do Next.js (RSC)

    Homepage Next.js com chunk RSC fictício. Detecta cabeçalhos Next-Action/Rsc-Action-Id, payloads "$@N", "$1:constructor:constructor" e marcadores resolved_model/$B<hex> usados pelo exploit do CVE-2025-55182.

    POST /_next/actions · POST /api/action · cabeçalho Next-Action
    CVE-2025-55182

Como ler a comparação

Acesse o mesmo recurso em cada subdomínio, ou aponte seu DNS local para diferentes hosts. Se o request chega até aqui, ele aparece em /dashboard/ com o modo de implantação correspondente. Quando a borda bloqueia, o evento simplesmente não chega à origem — e essa é a métrica mais honesta possível.

Nada aqui toca configuração real, segredos ou banco principal. SQLite isolado, conteúdo dos "leaks" hard-coded e fictício.