VULNERABILIDADES DE APLICACIONES WEB: EXPOSICIÓN DE INFORMACIÓN VALIOSA POR MEDIO DE ARCHIVOS DE REGISTRO

26.02.2018 18:30
 
La información escrita en los archivos de registro puede ser de naturaleza sensible y por ende puede proporcionar todo tipo de información valiosa a un pirata informático.
 
Veamos el siguiente archivo "frente.php":
 
<?php
$nombre = $_POST['nombre'];
$clave = $_POST['clave'];
 
$archivo = "protegido/log.txt";
$fh = fopen($archivo, 'a') or die("no se puede abrir el archivo");
$stringData = date("Y/m/d h:i:s", mktime()) . " ";
fwrite($fh, $stringData);
$stringData = $nombre . ":";
fwrite($fh, $stringData);
$stringData = $clave . "\r\n";
fwrite($fh, $stringData);
fclose($fh);
 
if ((($nombre == 'Carlos') && ($clave == 'coche')) || (($nombre == 'Pedro') && ($clave == 'casa'))){
header('Location: admin.php');
} else {
header('Location: frente.php');
}
?>
 
El script escribe el nombre de usuario, la contraseña y la hora al archivo "log.txt" dentro del directorio "protegido/", dejando la información en la ruta de la aplicación por lo que cualquiera que sepa de su existencia (o simplemente esté buscando algo) podrá acceder a la misma. Es de poca utilidad escribir los datos a un archivo de un directorio protegido, tarde o temprano un hacker podría acceder a los mismos.
 
Si bien el registro de información puede ser útil durante la etapa de desarrollo de una aplicación, es importante que los datos registrados una vez que la aplicación entre en uso no expongan información sensible del usuario y/o útil al pirata informático.
 
¡Cuidado, el código fue simplificado para facilitar su comprensión. No use combinaciones usuario/contraseña incrustadas en el programa, mucho menos en texto plano!
 
Artículos relacionados: