Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/10/2006, 03:47
Avatar de Covids0020
Covids0020
 
Fecha de Ingreso: septiembre-2003
Ubicación: España
Mensajes: 217
Antigüedad: 20 años, 7 meses
Puntos: 1
Seguridad: php que genera un archivo (vcard)

Hola, como siempre, ando algo paranoico con la seguridad y...me temo que nunca colgaré nada si sigo así


El tema es que he intentado montar un archivo que me genere una Vcard a partir de unos datos en DB que recibo "de otro archivo" por URL y me gustaría saber qué problemas de seguridad opinais que pueda tener en relación a modificar el array pasado por URL :
Código PHP:
<?php
/* Sobra mencionar que antes he serializado el array, 
lo he codificado con base64 (eso no me gusta) y como no, 
lo codifico por url:*/

error_reporting(0);
// Vars:
if (isset($_GET['vcard']))
{
  
// Vars:
  
$vcard_url urldecode(base64_decode(stripslashes(
$_GET['vcard'])));
  
$vcard_data unserialize($vcard_url);
  
  
//print_r($vcard_data);

  
foreach ($vcard_data as $k=>$v)
  {
    ${
$k}=utf8_decode($v);
    echo 
"$v<br />";
  }
}
?>
Aclarar que no he puesto la genereación de Vcard ya que he creido no es tan importante (o sí?...), solo genera la cabezera del archivo y lo "lee".
Como digo, ando algo paranoico e intento imaginar como pueden descargar archivos "sensibles" a través de este script.
Yo entiendo que si modifico algún parametro de la URL se genera un archivo "imposible" y punto lo cual es un mal menor...
Pero intento imaginar como el tio que intentara hackear debería codificar lo que quisiera en base64, codificar por URL y pasar la variable... que es posible pero no veo peligro.
En ese sentido aún quiero encriptar de algún modo aleatorio el array que paso además de reducir el codificado porque sale larguísimo

Desde ya muchas gracias!

PD: Esto es relativo a otro problema que tengo con un gestor de descarga, codificar la URL para que sea aleatoria (se pasa una variable fija que descargará el archivo) :S
__________________
"La sabiduría comienza donde acaba el conocimiento". Yaris.
http://www.culturadigital.org