Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2008, 00:05
Avatar de adex
adex
 
Fecha de Ingreso: marzo-2002
Ubicación: Lima, Perú, América Latina
Mensajes: 445
Antigüedad: 22 años, 2 meses
Puntos: 0
Exclamación Seguridad en descarga de archivos

Hola amigos del foro, encontré un script que permite ocultar la carpeta de los archivos que se descargan, pero hay un problema de seguridad que con un poco de curiosidad se puede bajar todos los archivo del servidor: ?doc=../../index.php

Código PHP:
<?php
// Indicamos el nombre del directório                            
define('dir','Carpeta_archivos');                                  
// Comprobamos que exista la cookie                              
if($_COOKIE['descarga'] == '1'){                                 
 
// Si existe la cookie intentamos                               
 // leer el archivo                                              
 
$doc $_GET['doc'];                                    
 if(
file_exists(dir.'/'.$doc)){                              
 
// Si existe el archivo lo enviamos                             
 
header('Content-Type: application/octet-stream');               
 
header('Content-Disposition: attachment; filename='.$doc);  
 echo 
file_get_contents(dir.'/'.$doc);                       
 } else {                                                        
 
// Sino existe el archivo enviamos                              
 // un error 404                                                 
 
header('HTTP/1.0 404 Not Found');                               
 echo 
'<h1>ERROR</h1><br />No se ha',                             
 
' encontrado el archivo sol',                                  
 
'icitado';                                                      
 }                                                               
} else {                                                         
 
// Sino hay cookie enviamos un error                            
 // 401                                                          
 
header('HTTP/1.0 401 Unauthorized');                            
 echo 
'<h1>ERROR</h1><br />No puedes ',                           
 
'acceder a este archivo',                                
 
'. ';                                          
}                                                                
?>
Que cambios puedo hacer para evitar este problema?

muchas gracias !