Relatório de Segurança

Análise Red Team / RPA com 10 agentes paralelos. Duração: ~9 minutos. Data: 15/08/2026.

Resumo Executivo

Risco Geral: MÉDIO-ALTO para a plataforma

Risco Gamificação: BAIXO para manipulação

O sistema de gamificação (Smartico) possui validação server-side robusta. As vulnerabilidades estão na camada de autenticação do BR4.

Arquitetura Descoberta

PlataformaCometa Gaming (white-label de Curaçao)
GamificaçãoSmartico.ai (SaaS terceirizado)
EsportesAltenar SDK
Real-timeSoketi (self-hosted Pusher)
CDNCloudflare
OperadorSabiá Administração LTDA (CNPJ 04.426.418/0001-16)

Vulnerabilidades Críticas

1. Ausência de Rate Limiting CRÍTICO

EndpointTestadoResultado
/api/auth/login100+ requestsSEM bloqueio
/api/auth/register15+ requestsSEM bloqueio
/api/generate-token20 tokensSEM bloqueio
/api/auth/me20 requestsSEM bloqueio

Impacto: Permite brute force de credenciais (~10.000 tentativas/hora por IP)

2. Credenciais Expostas no JavaScript CRÍTICO

// Smartico API Keys
Label API Key: 1a18ce91-d591-4d65-acaf-fcea8a9cd07a-6
Brand Key: 19e22ec2

// Datadog
Client Token: pub5e0d47377e4d7c8cfaf4dfd1f800bbd8

// Legitimuz
API Token: 7e095f89-5fab-4a9c-ada5-55027a37ef1c

// Pusher/Soketi
App Key: soketi_app_key_dbe50c1ff66ea

3. JWT com PII Exposto CRÍTICO

O token JWT (HS256) contém dados sensíveis em base64:

Cookie sem httpOnly - vulnerável a XSS

4. CORS Misconfiguration ALTO

Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: *
Access-Control-Allow-Methods: *

Vetores de Ataque

VetorSeveridadeDescrição
Brute Force Login CRÍTICO 100 requests em 36s, sem CAPTCHA, sem rate limiting
Credential Stuffing CRÍTICO Aceita requests concorrentes sem throttling
XSS Token Theft ALTO JWT em localStorage (sem httpOnly), sameSite: 'none'
Token Flooding MÉDIO /api/generate-token cria tokens ilimitados
Account Enumeration MÉDIO Erros revelam CPF/email existente
Referral Abuse MÉDIO R$30 por indicação, max 50 = R$1.500 potencial

APIs Descobertas

Endpoints Autenticados

MétodoEndpointDescrição
GET/api/auth/mePerfil do usuário
GET/api/generate-tokenGera token Smartico
POST/api/coupons/listLista cupons
GET/api/bonusLista bônus
GET/api/kyc/onboardingStatus KYC

Endpoints Públicos

MétodoEndpointDescrição
GET/v2/promotionsTodas promoções (sem auth)
GET/v2/casino-gamesLista jogos

WebSocket Endpoints

Proteções Encontradas

  • Missões validadas server-side
  • Compras na loja validadas pelo Smartico
  • JWT assinado (HS256) - modificação invalida token
  • Cloudflare ativo (mas sem rate limiting configurado)
  • WebSocket privados com autenticação
  • Canais encriptados para dados sensíveis

Recomendações

Prioridade CRÍTICA

  1. Implementar rate limiting em /api/auth/login (max 5/min por IP)
  2. Habilitar CAPTCHA para login e registro
  3. Mover JWT para cookie httpOnly
  4. Remover API keys do JavaScript client-side

Prioridade ALTA

  1. Configurar CORS restritivo (não usar *)
  2. Adicionar headers CSP, X-Frame-Options
  3. Implementar invalidação de token no logout
  4. Remover PII desnecessário do JWT

Prioridade MÉDIA

  1. Rate limiting em /api/generate-token
  2. Sanitizar erros de registro
  3. Limpar achievement IDs inativos
  4. Audit logging para WebSocket commands

Valores Hardcoded

deposit_min: 500         // R$5,00
deposit_max: 1000000000  // R$10.000.000,00
withdraw_min: 1000       // R$10,00
withdraw_max: 5000000    // R$50.000,00
withdraw_daily: 20       // requests
refer_referrer_amount: 3000  // R$30,00
refer_referee_amount: 500    // R$5,00
refer_max_refer: 50
casino_bet_min: 10
casino_bet_max: 5000000
sport_bet_min: 100