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 controle/AvisoControle.php #491

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

Comments

@joaopontes22
Copy link
Contributor

Vulnerability Analysis

  1. O código não verifica se as variáveis $_POST['idfuncionario'], $_POST['idpaciente'], $_POST['descricao_emergencia'] e $_POST['idfichamedica'] estão definidas antes de usá-las. Isso pode levar a um erro Undefined index se essas variáveis não forem enviadas pelo formulário.

  2. O código também não filtra ou valida os dados recebidos via $_POST, o que pode levar a vulnerabilidades de segurança como SQL Injection. Recomenda-se utilizar prepared statements para evitar isso.

  3. Se o arquivo de configuração config.php não existir no diretório atual ou em um diretório pai, o código entrará em um loop infinito na tentativa de encontrar o arquivo. Isso pode causar um alto consumo de recursos do servidor.

  4. Dentro do bloco catch do try-catch, o código simplesmente chama $e->getMessage(), mas não faz nada com essa mensagem de erro. Pelo menos um log ou uma mensagem de erro significativa deveria ser exibida para o usuário.

  5. Não está claro se a variável ROOT está definida em algum lugar, pois é usada para incluir os arquivos de classes, mas não é definida no trecho de código fornecido.

  6. Após uma exceção ser lançada, a execução do script continuará normalmente e o redirecionamento usando header("Location: ...") ainda será executado. Isso pode causar comportamento inesperado e possíveis vulnerabilidades se informações sensíveis estiverem sendo manipuladas ou exibidas incorretamente.

  7. A classe AvisoControle não possui um construtor, o que pode tornar a inicialização da classe e a utilização de dependências mais complexas no futuro.

Essas são as principais vulnerabilidades e problemas identificados no código fornecido. É importante corrigir essas questões para garantir a segurança e consistência do sistema.

@GabrielPintoSouza
Copy link
Collaborator

Feedback

  • O comentário foi útil? 4 = Útil
  • O erro foi fácil de localizar? 5 = Muito fácil
  • Foi possível corrigir? Parcialmente
  • O quão fácil de corrigir? 4 = Fácil

OBS: A utilização do arquivo config.php é padrão em todo o projeto, alterar sua utilização implicaria em uma refatoração em quase todos os arquivos do sistema.

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