Debes verificar que tipo de archivo es lo que se esta subiendo, checa su mime-type...
Código PHP:
Ver original$mimeType = $_FILES['upfile']['type'];
$typeFileAcept = array('jpeg','npg','gif');
//archivo valido!
}else {
//archivo invalido!
}
Actualización: No había visto lo de los permisos, por supuesto que es extremadamente riesgoso dar permisos 777, informate mas, esos permisos indican que se pueden ejecutar cualquier tipo de archivo subido, jamas debes darle dichos permisos a archivos subidos por usuarios, jamas...