CVE-2024-57522 - Vulnerabilidade XSS Armazenada em Users.php - SourceCodester Packers and Movers Management System 1.0
Descrição
Este repositório contém uma Prova de Conceito (PoC) para uma vulnerabilidade de Cross-Site Scripting (XSS) armazenada no Packers and Movers Management System 1.0 da SourceCodester. A vulnerabilidade está presente no endpoint Users.php, onde um atacante pode injetar um script malicioso no campo de nome de utilizador ou nome durante a criação do utilizador. O script é então armazenado na base de dados e executado quando um administrador visualiza a página de listagem de utilizadores, resultando em potenciais ações maliciosas.
Detalhes da Vulnerabilidade
- CVE-2024-57522
- Produto Afetado: Packers and Movers Management System 1.0
- Componente Afetado: endpoint Users.php
- Tipo de Ataque: Remoto
- Impacto: Execução de Script Malicioso, Roubo de Sessão, Phishing, Redirecionamentos Maliciosos
- Implicações de Segurança: O atacante pode injetar e executar código JavaScript arbitrário no contexto do navegador de um administrador. O script injetado permanece persistente, permitindo roubo de sessão, phishing e outras atividades maliciosas quando um administrador visualiza a página de listagem de utilizadores.
Prova de Conceito (PoC)
Este repositório inclui um vídeo de PoC, CVE-2024-57522.mkv, demonstrando como um atacante pode explorar a vulnerabilidade XSS. A PoC mostra como um atacante pode criar um novo utilizador administrador com um payload no campo de nome (ex.: <script>alert(1);</script>). Quando o administrador visita a página de listagem de utilizadores, o script malicioso é executado, mostrando um alerta com a mensagem "1."
Vetores de Ataque
- O atacante cria um exploit CSRF para criar um utilizador administrador com um script malicioso injetado no campo de nome. Usando CVE-2024-57523
- O script malicioso é armazenado na base de dados e executado quando um administrador visita a página de listagem de utilizadores.
Recomendações de Mitigação
Para mitigar esta vulnerabilidade, as seguintes medidas de segurança são recomendadas:
- Proteção CSRF: Implementar tokens CSRF em todos os formulários que realizam ações de alteração de estado, como criação de utilizadores, para evitar requisições não autorizadas.
- Validação e Sanitização de Entrada: Sanitizar e escapar adequadamente as entradas dos utilizadores, especialmente para campos como nomes de utilizador ou nomes, para impedir a injeção de scripts maliciosos.
- Política de Segurança de Conteúdo (CSP): Implementar uma CSP para reduzir o impacto potencial de vulnerabilidades XSS, restringindo as fontes das quais os scripts podem ser carregados.
- Escapar Conteúdo Gerado pelo Utilizador: Garantir que o conteúdo gerado pelo utilizador seja validado e escapado antes de ser renderizado no navegador para evitar a execução de scripts.
Versões Afetadas
- Packers and Movers Management System 1.0
Descobridor
- Madhav Shah - Pesquisador de Segurança
Referências