Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/11/2005, 02:51
cargosan
 
Fecha de Ingreso: abril-2003
Ubicación: Malaga
Mensajes: 176
Antigüedad: 21 años
Puntos: 1
Urgente problema de seguridad

Hola amigos,

Tengo un pequeño gran problema, tengo un servidor propio y tengo un script en php que captura las variables que me mandan los formularios pero por lo que me ha dicho mi administrador no es muy seguro, de hecho creo que ha habido un ataque de spammers.

me gustaria que los mas entendidos en seguridad me ayudasen a mejorar el script y si no es posible mejorarlo pues si me pueden indicar posibles soluciones o sitios donde encontrarlas se los agradeceria mucho

el codigo es el siguiente
Código PHP:
<?

//Seguridad (para q no lo manden desde otros websites)
    //Buscar dominio
echo "REFERER=".$_SERVER['HTTP_REFERER']."<br>";
$ref $_SERVER['HTTP_REFERER'];
$tmp = (substr(stristr($ref'//'),2));
$pos strpos($tmp,'/');
$tmp substr($tmp,0,$pos);
echo 
"TMP=".$tmp."<br>";

//Comparar dominio
if ($tmp!="http://www.dominio.com")
{
    echo 
"PROHIBIDO!!";
    exit;


//Recogida de var's
$recipient $_POST['recipient'];
$subject $_POST['subject'];
$redirect $_POST['redirect'];
$nombre $_POST['nombre'];


// Create the message file based on the posted variables
$msg="============ Envio de Formulario  ============\r\n\r\n";
reset ($HTTP_POST_VARS);
while (list (
$key$val) = each ($HTTP_POST_VARS)) 
{
    if ( (
$key!="recipient") && ($key!="subject")&& ($key!="redirect") )    
    {
        
$msg.= "$key:  $val\r\n";
    }
}


$From="From: $nombre <$email>\n";
   
$mailok=mail("$recipient""$subject"$msg$From); 
if (
$redirect) {
    
header("Location: $redirect");
} else {
    print 
"The data has been submitted. Thank You.";
}
?>
Muchisimas gracias de antemano