Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Análise de vulnerabilidade do arquivo html/atendido/listar_ocorrencias.php #345

Closed
joaopontes22 opened this issue May 10, 2024 · 1 comment
Labels
Security MN análise

Comments

@joaopontes22
Copy link
Contributor

Vulnerability Analysis

  1. Vulnerabilidade de Injeção de SQL: O código contém vulnerabilidades de injeção SQL, pois os dados fornecidos pelo usuário são diretamente inseridos nas consultas SQL sem qualquer tipo de sanitização. Isso torna o sistema vulnerável a ataques de injeção SQL.

  2. Não uso de Prepared Statements: O código executa consultas SQL usando a extensão mysqli, mas não utiliza prepared statements. O uso de prepared statements ajuda a prevenir ataques de injeção SQL, pois os parâmetros são tratados separadamente das instruções SQL.

  3. Sanitização dos Dados de Entrada: Não há evidência de sanitização adequada dos dados de entrada fornecidos pelo usuário, o que é essencial para impedir ataques maliciosos.

  4. Uso da Função extract: O uso da função extract($_REQUEST) pode causar problemas de segurança, pois extrai variáveis do array de requisição diretamente para o escopo de variáveis. Isso pode resultar em variáveis inesperadas sendo definidas no código.

  5. Redirecionamento sem Validar a Autenticação: Apesar do código verificar a autenticação do usuário inicialmente, há um redirecionamento não autenticado para ../../controle/control.php em casos específicos. Isso pode permitir a um invasor acessar informações privilegiadas.

  6. Verificação de Permissões Inadequada: O código realiza verificação de permissões para determinar o acesso, mas a implementação pode não estar correta. A condição if($permissao['id_acao'] < 7) seguida por header("Location: ../../home.php?msg_c=$msg") pode não ser suficiente para garantir a segurança do sistema.

  7. Uso de extract e $_REQUEST: O uso da função extract em conjunto com $_REQUEST pode resultar em variáveis inesperadas sendo definidas no escopo do script, o que pode ser um problema de segurança.

Para corrigir as vulnerabilidades, é recomendável:

  • Utilizar prepared statements para consultas SQL.
  • Sanitizar e validar sempre os dados de entrada.
  • Evitar o uso de funções como extract e minimizar o uso de variáveis globais.
  • Realizar redirecionamentos apenas após validar adequadamente a autenticação e as permissões do usuário.
  • Verificar cuidadosamente a lógica de permissões para garantir a segurança do sistema.
  • Implementar um controle mais rígido sobre as variáveis utilizadas e considerar a reestruturação do código para melhor segurança e performance.
@joaopontes22 joaopontes22 added the Security MN análise label May 10, 2024
nicolly015 added a commit that referenced this issue Sep 20, 2024
@nicolly015
Copy link
Contributor

  • O comentário foi útil? 3 = Neutro

  • O erro foi fácil de localizar? 5 = Muito fácil

  • Foi possível corrigir o erro? Possível

  • O quão fácil de corrigir? 5 = Muito fácil

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Security MN análise
Projects
None yet
Development

No branches or pull requests

2 participants