solidinvoice/solidinvoice: Vulnerabilidades de bypass de autorização em LiveComponents do Symfony
Quatro vulnerabilidades de bypass de autorização foram descobertas em ações do Symfony LiveComponent: (1) Revogação de token de API entre usuários, (2) Divulgação de histórico de token de API entre usuários, (3) Divulgação de configurações de transporte de notificação entre usuários, (4) Assunção de configurações de transporte de notificação entre usuários.
O que mudou
Quatro vulnerabilidades de bypass de autorização foram descobertas em ações do Symfony LiveComponent: (1) Revogação de token de API entre usuários, (2) Divulgação de histórico de token de API entre usuários, (3) Divulgação de configurações de transporte de notificação entre usuários, (4) Assunção de configurações de transporte de notificação entre usuários. As ações do LiveComponent aceitam IDs de entidade sem verificar a propriedade, permitindo que qualquer usuário autenticado dentro de uma empresa acesse, modifique ou exclua tokens de API e configurações de transporte de notificação de outros usuários.
Quem isso afeta
Todos os usuários autenticados de aplicações solidinvoice/solidinvoice que usam Symfony LiveComponents. Atacantes podem revogar tokens de API, divulgar histórico de tokens (IPs, user agents) e roubar credenciais de transporte de notificação (chaves de API do Slack, Discord, Telegram, SMS).
O que fazer hoje
Aplique a correção sugerida: adicione verificação de propriedade do usuário em cada LiveAction/LiveProp antes de realizar operações, por exemplo: `if ($token->getUser() !== $this->security->getUser()) { throw $this->createAccessDeniedException(); }`.