webdevqa.jp.net

HTTP URLのコンポーネントとは何ですか?また、HTTPリクエストでそれらはどのような役割を果たしますか?

このリンクを考えると:http://clk.tradedoubler.com/click?p=113177&a=89693&g=189788889&url=http://track.adform.net/C/?bn=8997990;cpdir=http://www.tele2.se/mobilt-bredband.html?utm_source=tradedoubler&utm_medium=Affiliate&utm_campaign=Omnitel_Tradedoubler

まず、ブラウザはhttp://clk.tradedoubler.com/click?p=113177&a=89693&g=189788889にリクエストを送信します

&url=は一種の リダイレクト クエリパラメータと リダイレクト 別のリモートURLを参照します:

http://track.adform.net/C/?bn=8997990;cpdir=http://www.tele2.se/mobilt-bredband.html?utm_source=tradedoubler&utm_medium=Affiliate&utm_campaign=Omnitel_Tradedoubler

このURL内では、クエリパラメータ;cpdir=は リダイレクト クエリパラメータと リダイレクト 参照:

http://www.tele2.se/mobilt-bredband.html?utm_source=tradedoubler&utm_medium=Affiliate&utm_campaign=Omnitel_Tradedoubler

これらのパラメータはすべて 添付 クエリ文字列の残りの部分の前に追加されますが、その意味はわかりません:?utm_source=tradedoubler&utm_medium=Affiliate&utm_campaign=Omnitel_Tradedoubler

&url=;cpdir=の違いは何ですか?

3
user385917

あなたの分析は正しくありません。それはnot「一種のリダイレクト」です。 余談ですが、この回答の各水平線は、あなたの知識の私の仮定の飛躍を示しています:私は最も基本的なものから始めて、連続する各水平線でより高度なトピックに移動します。

Burp Proxy または WebScarab などのソフトウェアツールを使用します。これらは通常、セキュリティテストツールですが、 RLs および [〜#〜] http [〜#〜] に関連する非常に単純な概念を学習しようとしています。これらは役立つ場合があります。あなたは経験によって学びます。これらのプロキシの1つを設定して、WebブラウザのURLを傍受します。この目的で使用するのが最も簡単なのはMozillaFirefoxであり、 FoxyProxy Standard などのプロキシスイッチングアドオンをインストールできます。

投稿の元のリンクをたどると実際に何が起こるかというと、Webブラウザは次のとおりです。

ここで、...情報は関連するフィールドに置き換えられます。


これの意味を理解するには、make an HTTP Requestの意味を理解する必要があります。それがまさに起こっていることです。

URLは、http://domain.com部分を除いて、RLのクエリ文字列全体がリモートサーバーに送信されるように分解されます。

さて、あなたが理解しなければならないのは、リモートサーバーはこの情報を使ってやりたいことを何でもできるということです。それはそれで何もする必要がありません。それは、他の無限の可能性の中で、次のことができます。

  • 情報を無視する
  • クエリ文字列で指定されたパラメータのURLにHTTPリクエストを送信します
  • クエリ文字列内のURLの1つへのリダイレクトを示すHTTP応答をコンピューターに送信します
  • 情報をデータベースに保存する
  • アメリカ合衆国大統領に電話し、テキストリーダーを使用してURLを読みます
  • クエリ文字列の入力を乱数ジェネレーターとして使用して、キャンベルのアルファベットスープの缶に出力する文字を決定します。
  • 等々...

&url=http://...クエリ文字列の一部であり、clk.tradedoubler.comに送信されます。このホストがそのクエリ文字列で何をしているのかを知るには、clk.tradedoubler.comサーバーでこの情報を処理しているソフトウェアのソースコードを確認する必要があります。 「ブラックボックス」の観点からできることは、ブラウザがclk.tradedoubler.comから受信するHTTP応答(存在する場合)を監視することです。これを送信した後HTTPリクエスト。そのために、BurpまたはWebScarabを使用するという上記の提案を参照してください。

ただし、notは、一般的なケースでは、リモートサーバーがクエリパラメータで渡される情報を使用して特に何かを実行していると想定する必要があります。あなたが想定すべきことは、おそらくそれが最悪の可能性のあることを行うということです-このように考えることは、少なくとも潜在的な脅威を見つけるのに役立ちますあなたの個人情報に影響を与える可能性があります。


これらの基本的な概念を理解すると、このURLが実際に何をしているのかを学び始めることができます。それは明らかにウェブ広告システムの一部です。 utmrchin Tracker Module を参照します。これは(少なくともそのAPIで、知っているバックエンドの場合)GoogleAdWordsシステムに統合されています。したがって、最低限、このリクエストは、関連する広告を配信するために、Webブラウジングの習慣に関する情報を保存しようとしていると想定するのが安全です。


この別の質問について:

&url=;cpdir=の違いは何ですか?

&url=は、区切り文字が&であるurlという名前のクエリパラメータの開始です。

;cpdir=は、区切り文字が;であるcpdirという名前のクエリパラメータの開始です。埋め込みURLで使用される区切り文字は;ですが、機能的には&と同等です。これが使用される理由は、&が使用された場合、元のURLを解析するHTTPサーバーが、&に続くすべてが新しいURLパラメーターの名前を開始していると誤解するためです外部URLの

これは、それらの1つに似ています Matryoshka doll タイプの問題。URLの中にURLがあります。 「外部」URLを受信するHTTPサーバーが、内部URLに渡されたパラメーターを外部URLに属するパラメーターとして解釈しないようにする方法が必要です。そのため、&から;に切り替えます。クエリ文字列のフォーマットと構文の詳細については、 クエリ文字列に関するウィキペディアのエントリ を参照してください。

6
allquixotic