14-16 Mar 2026
Voltar ao catalogo

Evento de dominio publica credenciais Galileu em texto plano

HIGH-05
HighAchado ConfirmadoSegurancaRodada 1

Descricao

O campo input.Senha (texto plano, antes da criptografia) e publicado nos ETOs GalileuCredentialCreatedEto e GalileuCredentialUpdatedEto no ILocalEventBus. Consumido por CargaAdicionalScraperService que envia em texto plano para o ScraperOrchestrator.

Evidencia
`GalileuCredentialsAppService.cs` linhas 155 e 188: `var eventData = new GalileuCredentialCreatedEto(CurrentTenant.Name!, input.Login, input.Senha)`. `CargaAdicionalScraperService.cs` linhas 48-53 envia login e senha em texto plano.
Impacto Tecnico

Senha Galileu transita em texto plano entre servicos. Se handlers logam eventos, a senha aparece nos logs.

Impacto de Negocio

Comprometimento de credenciais de rastreamento Galileu de clientes.

Recomendacao

Nunca incluir senhas em texto plano em eventos de dominio. O ScraperOrchestrator deve buscar credenciais em storage seguro proprio.

Arquivos Afetados

aspnet-core/src/cargo_fleet.Application/GalileuCredentials/GalileuCredentialsAppService.csaspnet-core/src/cargo_fleet.Application/CargaAdicionalScraper/CargaAdicionalScraperService.cs

Acoes Relacionadas

{
  "id": "HIGH-05",
  "title": "Evento de dominio publica credenciais Galileu em texto plano",
  "severity": "High",
  "type": "achado confirmado",
  "category": "security",
  "description": "O campo `input.Senha` (texto plano, antes da criptografia) e publicado nos ETOs `GalileuCredentialCreatedEto` e `GalileuCredentialUpdatedEto` no `ILocalEventBus`. Consumido por `CargaAdicionalScraperService` que envia em texto plano para o ScraperOrchestrator.",
  "evidence": "`GalileuCredentialsAppService.cs` linhas 155 e 188: `var eventData = new GalileuCredentialCreatedEto(CurrentTenant.Name!, input.Login, input.Senha)`. `CargaAdicionalScraperService.cs` linhas 48-53 envia login e senha em texto plano.",
  "technicalImpact": "Senha Galileu transita em texto plano entre servicos. Se handlers logam eventos, a senha aparece nos logs.",
  "businessImpact": "Comprometimento de credenciais de rastreamento Galileu de clientes.",
  "recommendation": "Nunca incluir senhas em texto plano em eventos de dominio. O ScraperOrchestrator deve buscar credenciais em storage seguro proprio.",
  "files": [
    "aspnet-core/src/cargo_fleet.Application/GalileuCredentials/GalileuCredentialsAppService.cs",
    "aspnet-core/src/cargo_fleet.Application/CargaAdicionalScraper/CargaAdicionalScraperService.cs"
  ],
  "pass": 1,
  "relatedActions": [
    "ACT-5.1.2"
  ],
  "relatedFindings": [
    "SEC2-01"
  ]
}