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 dao/pet/PetDAO.php #448

Closed
joaopontes22 opened this issue May 23, 2024 · 1 comment
Closed

Análise de vulnerabilidade do arquivo dao/pet/PetDAO.php #448

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

Comments

@joaopontes22
Copy link
Contributor

Vulnerability Analysis

  1. A vulnerabilidade nesse código está na forma como o caminho do arquivo de conexão (dao/Conexao.php) é determinado. O código primeiro verifica se o arquivo existe no diretório atual e, caso não encontre, começa a subir um nível de diretório por vez até encontrar o arquivo. Esse método pode ser considerado inseguro, pois um atacante pode utilizar o loop para acessar diretórios acima do desejado e potencialmente obter acesso a arquivos sensíveis.

  2. Além disso, a prática de ter a conexão com o banco de dados dentro do código da classe PetDAO não segue o princípio de separação de preocupações. É recomendado separar a lógica de acesso ao banco de dados em uma classe dedicada, como a Conexao, e então injetar essa conexão na classe PetDAO.

  3. Outra questão é o tratamento de exceções no código. Há blocos try-catch para tratamento de exceções, porém, em alguns casos, apenas a mensagem de erro é exibida na tela, o que pode não ser ideal em um ambiente de produção.

  4. Na função adicionarPet, a inserção da imagem do pet diretamente no banco de dados como conteúdo binário ($imgperfil) pode não ser a melhor prática. Normalmente, armazenar as imagens em um diretório no servidor e salvar somente o caminho da imagem no banco de dados é mais eficiente.

  5. Análise de SQL Injection: As consultas SQL no código não estão aproveitando as funções de prepared statements ao máximo. Ainda há concatenação de strings em algumas partes, o que pode tornar o código vulnerável a ataques de SQL Injection.

Estas são algumas áreas que podem ser melhoradas para tornar o código mais seguro, robusto e seguindo as melhores práticas de desenvolvimento.

@joaopontes22 joaopontes22 added the Security MN análise label May 23, 2024
@angel-jgpv
Copy link
Contributor

Resolvido By: Lenart
13/09/24

angel-jgpv added a commit that referenced this issue Sep 13, 2024
angel-jgpv added a commit that referenced this issue Sep 13, 2024
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