Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom eu estou com uma dúvida, queria saber se este código de upload está totalmente seguro contras shells, SQLinjection, etc...
if (!empty($foto["name"])) {
$largura = 1500; $altura = 1000; $tamanho = 204800;
if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $foto["type"])){
$error[1] = "Isso não é uma imagem.";
}
$dimensao = getimagesize($foto["tmp_name"]);
if($foto["size"] > $tamanho) {
$error[4] = "A imagem deve ter no máximo ".$tamanho." bytes";
}
if (count($error) == 0) {
preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);
$nomeia = md5(uniqid(time())) . "." . $ext[1];
$diretorio = "imagens/" . $nomeia;
move_uploaded_file($foto["tmp_name"], $diretorio);
Grato
Vinicius é que existe insert só que eu não postei essa parte do código
ai eu recomendo que poste, fica difícil eu saber se existe o risco sem ver a parte que tenha sql.
mas está seguro contra shell ou arquivos hackers?
Use conexão PDO não e complicado e vai ser dar um ponto final desse papo de injetc
Até onde eu vi como você não feixou corretamente o if então mesmo se o tamanho do arquivo passa do limite permitido o upload vai continuar
era para você botar um else{ e ai continuar }
vamos entender o que é cada coisa
http://php.net/manual/pt_BR/security.database.sql-injection.php
como não tem sql no seu code eu presumo que ele é 100% seguro contra esse tipo de invasão.