¿Sería este script de redireccionamiento me abrirá para la inyección de código o inclusión de archivos remoto?
-
23-09-2019 - |
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!
Solución
Sí, lo sería. Ninguno de esos personajes en cualquier combinación es suficiente para causar un problema de XSS.