8

私はウェブサイトの URL でいっぱいのデータベースを持っています。主キーは$_SERVER["HTTP_HOST"]ウェブサイトのです。

ユーザーが ... に移動するとwww.my-epic-example-url.com、データベースに接続してその Web サイトを使用し$_SERVER["HTTP_HOST"]、その Web サイトを参照するすべてのデータを取得します。

私が知りたいのは、どのくらい安全です$_SERVER["HTTP_HOST"]か?

外部から変更することはできますか?

私が尋ねる唯一の理由は、私が記事を読んだためです (それがどこにあったか覚えていません) $_SERVER を使用するときは安全ではないので注意してください...

これは本当ですか?

4

1 に答える 1

19

$_SERVER["HTTP_HOST"]クライアントから送信された HTTPHostヘッダーです。これにより、このヘッダーは一般的に安全ではなくなります。

ただし、Web サーバーが VirtualHost 構成に基づいて実行するスクリプトを決定し、HTTPHostヘッダーによってトリガーされる典型的な仮想ホスト設定の場合、ホワイトリストに登録された既知の値が受信されない限り、スクリプトは実行されません。そのヘッダーに。

Web サーバーがヘッダーを気にせずHost、すべての要求に対して特定のスクリプトを実行する場合、この値は絶対に何でもかまいません。

于 2012-04-27T12:35:32.787 に答える