このリダイレクトスクリプトはコードインジェクションやリモートファイルインクルージョンのために私を開くだろうか?

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

質問

最近、私はアフィリエイトリンクをリダイレクトするPHPスクリプトを使用することについてのブログの記事に出くわしました。それは私は、このスクリプトが安全であったか否かを考えるようになりました。私は$ _GET変数を使用すると、脆弱性につながる可能と聞きました。

任意の提案をいただければ幸いです。ですが(「 - 」)英数字とハイフンの入力をチェックする

この防ぐには十分では? このスクリプトの

は、内のリンクは、形式になります:

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

または

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

ここで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;
    }

?>

いつものように感謝します!

役に立ちましたか?

解決

はい、それはです。任意の組み合わせでこれらの文字はいずれも、XSSの問題を引き起こすのに十分ではありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top