Chrome で URL リダイレクトを防ぐ方法は?

Chrome で URL リダイレクトを防ぐ方法は?

たとえば、URL を入力して Enter キーを押すと、別の場所に移動するとは予想しません。その URL のサイトがない場合は、エラー ページが表示されると予想します。しかし、代わりに別の URL (別のドメイン: )abc.comにリダイレクトされます。abc.go.com

私は Web テクノロジの専門家ではありませんが、私の知る限り、リダイレクトには、DNS/レジストラ リダイレクト (非表示) とサーバー側リダイレクト (表示、http コード 301 または 302) の 2 つの主なカテゴリがあります。

Chrome でこれらのサーバー側リダイレクトを防ぐにはどうすればよいですか? 最良のシナリオは、ページの URL または IP が異なることを通知し、続行するかどうかを尋ねるプロンプト ページが表示されることです。

もう 1 つの例として、hackoverflow.comここから 2 つのサイトにリダイレクトされます。最初のリダイレクトの後、パーキング サイトに移動する前に、デザインされたホームページをちらっと見ることができます。この二重リダイレクトを途中で停止し、2 番目のサイトを調べたいと思います。

答え1

これはコンテンツを提供する応答にのみ機能するため、完璧な回答からは程遠いことは承知していますが、現時点では有用で実用的な回答がまったくないため、投稿することにしました。

手っ取り早い解決策としては、デバッガー (ほとんどのブラウザーでアクセス可能) を使用して、リダイレクトをオプトアウトする機会を自分に与えることができる場合がありF12ますCTRL+SHIFT+I

ページが独自のスクリプトを実行する前に、コンソールで次の行を実行します。

window.onbeforeunload = function(){ return 'Leave page?'; };

たとえば、Chrome を使用する場合:

  • デバッガ(F12)を開き、出典タブ。
  • 押すF8とデバッガーがステップスルー モードになります。
  • 問題のあるページに移動します。読み込みは開始されますが、デバッガーはスクリプトの実行を許可しません。
  • 上記のコードをコンソールに貼り付けて、Enter キーを押します。
  • もう一度押すF8とスクリプトが実行され、ページの読み込みが完了します。
  • これで、リダイレクトが発生する前にプロンプ​​トが表示され、リダイレクトをキャンセルできるようになります。
  • ページが繰り返しリダイレクトを試行する場合は、ダイアログを再度表示しないように Chrome に指示できます。ページが別の場所への移動を試行しても、何も表示されずに失敗します。

プロンプトはユーザーの制御を回復します

答え2

リダイレクトを一時的に停止する別の方法は、escリダイレクトが発生する前にボタンを押すことです。

escページ内の js の実行だけでなく、html のレンダリングも停止します。そのため、すぐに押すとリダイレクトは行われませんが、ページが完全に読み込まれない可能性があります。ページの内容や Cookie などのその他の情報を調査するのに役立ちます。

答え3

この問題に関する私の経験では、あらゆる状況でこれに対処する優れた方法はありません。つい先日、銀行のフィッシング詐欺を分析しているときにこの問題に遭遇しました。しばらくぶりだったので、この問題に関するリマインダーを探していました。Chrome でページが自動的にリダイレクトされないように変更してみましたが、何も機能しませんでした。機能しなかった理由は、ページの上部に次の内容が表示されていたためです。

<html>
    <head>
        <meta content='0;URL=&#39;https://scam-website-two.scam&#39;' http-equiv='refresh' />
    </head>
    <!-- other HTML here -->
</html>

このmetaタグは、最初の詐欺サイトに到達した後、2番目の詐欺サイトにリダイレクトしていました。metaタグによるリダイレクトに関する詳細情報ここ

したがって、私が知る限り、リダイレクトを止めることはできませんでした。しかし、このような厄介な状況に対する私の代替策は、Web ページをテキスト ファイルとしてダウンロードし、コンテンツを分析することであり、まさにそれを実行したので、私は気にしませんでした。

これを行うにはさまざまな方法があります。私は詐欺を分析する専用の Linux VM 内で作業していたので、ターミナル (bash) 内で次の操作を実行しました。

content=$(wget http://scam-website-one.scam -q -O -)

echo $content > scam.html

正当な評価を受けるべきところは評価する

まとめると、基本的なアルゴリズムは次のようになります。

  1. 言語を選択
  2. 問題のあるURLに対してHTTP GETを実行します
  3. 出力文字列を変数に保存する
  4. 出力文字列をファイルに保存する

前に述べたように、これは少なくともリダイレクトの原因を確認するのに役立ちます。ファイルをダウンロードした後、そのmetaタグを削除してページを確認することができました。

答え4

私の知る限り、この機能を無効にする方法はありません。

さらに重要なのは、そうすることで、Web サーバーが依存する非常に基本的な機能が壊れてしまうことです。多くの Web サイトが機能しなくなることが予想されます。

最低限、 - すべての「www」リダイレクトが機能しなくなる - すべての「httpからhttps」リダイレクトが機能しなくなる

そのため、手動で「https://www' を各ドメインの前に付けます。

さらに、ウェブサイト内の多くのサブページも機能しなくなります。

したがって、Chrome と Firefox の開発者が、ブラウザ レベルでリダイレクトを完全に無効にすることを非常に困難または不可能にしているとしても、私は驚かないでしょう。

関連情報