¿Sería este script de redireccionamiento me abrirá para la inyección de código o inclusión de archivos remoto?

StackOverflow https://stackoverflow.com/questions/2159849

Pregunta

Recientemente me encontré con un artículo en el blog sobre el uso de scripts PHP para redireccionar enlaces de afiliados. Me puse a pensar si este guión era seguro o no. He oído que el uso de la variable $ _GET puede conducir a una vulnerabilidad.

Cualquier sugerencia sería apreciada. ¿Podría comprobar la entrada de caracteres alfanuméricos y el guión ( '-')? Ser suficiente para protegerse contra esto

En este script, eslabones de sería de la forma:

http://www.somesite.com/amazon.php?asin=XXXXXXXXXX

o

http://www.somesite.com/amazon.php?id=some-keyword

Aquí es amazon.php:

   <?php

    $id = $_GET['id'];
    $asin = $_GET['asin'];

    if ($asin != NULL)
    {
        header("Location:http://www.amazon.com/exec/obidos/ASIN/".$asin."/fantasticaffiliate-20");
        exit;
    }

    else
    {
        $links = array(
            "keyword-one" => "http://www.amazon.com/b/?node=1122334455&tag=fantasticaffiliate-20",
            "keyword-two" => "http://www.amazon.com/exec/obidos/ASIN/1352434213/fantasticaffiliate-20"
            );          

        header("Location:".$links[$id]);
        exit;
    }

?>

Gracias como siempre!

¿Fue útil?

Solución

Sí, lo sería. Ninguno de esos personajes en cualquier combinación es suficiente para causar un problema de XSS.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top