You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
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.
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.
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.
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.
The text was updated successfully, but these errors were encountered:
Vulnerability Analysis
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.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 aConexao
, e então injetar essa conexão na classePetDAO
.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.
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.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.
The text was updated successfully, but these errors were encountered: