Est-ce que ce script de redirection me ouvrir pour l'injection ou l'inclusion de fichier distant code?
-
23-09-2019 - |
Question
Récemment, je suis tombé sur un article de blog sur l'utilisation de scripts PHP pour rediriger les liens d'affiliation. Il m'a fait penser que ce scénario était sûr ou non. J'ai entendu dire que l'utilisation de la variable $ _GET peut conduire à une vulnérabilité.
Toutes les suggestions seraient appréciés. Serait vérifier l'entrée de caractères alphanumériques et le tiret ( « - »)? Suffisant pour se prémunir contre cette
Pour ce script, des liens en serait de la forme:
http://www.somesite.com/amazon.php?asin=XXXXXXXXXX
ou
http://www.somesite.com/amazon.php?id=some-keyword
Voici 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;
}
?>
Merci, comme toujours!
La solution
Oui, il le ferait. Aucun de ces caractères dans toute combinaison est suffisante pour causer un problème XSS.