9月は路上で寒くなってきたので、私は問題をあきらめず、何が起こっているかを整理して、子供にデミシーズンのスーツを選ぶことにしました!
頭に浮かぶ最初の明白なことは、ページ上で明示的なリダイレクトを探すことです。 次のようなものを見つけようとして、ページのソースコードを開きます。
<meta http-equiv="refresh" content="3;url=http://---/">
さらに、無駄に、それはあまりにも簡単です。 標準のリダイレクトがないため、JSツールを使用して実装されます。 ブラウザでJSを無効にすることで仮説をテストします-ページがロードされ、どこにもスローされません。 同時に、window.locationはページのどこでも使用されず、代替URLもありません。 ブラウザがダウンロードするリソースを見てみましょう。

疑わしいURLがすぐに目を引き 、リクエストに応じてHTTPコード301が返されます: is.gd/J87Pzs
このURLを使用して、ページソース内の行をすばやく見つけます。

この行は、私が見たすべてのページにあることに注意してください。
うーん、このリンクで何が起こるかを理解する必要があります: is.gd/J87Pzs
is.gdは典型的なリファレンス短縮サービスです。 このURLの背後には、 home-income-business.com / sfi / i / qweがあります。
GETリクエストは、次のコンテンツを返します。
function process(){ window.location = "http://---/"; } window.onerror = process; process()
その時点で別のインターネットアクセスポイントに切り替えると、ケースは既に閉じられている可能性があり、問題は(突然)消えます:チェーンの最後のURLでのHTTP要求が空のコンテンツを返し始めます! なんだこれ? 再び別のアクセスポイントに切り替えます-悪意のあるコードが再び提供されます。 そして、これはもっと面白いです! IPアドレスに応じて、異なるコンテンツが提供されることがわかります。 これはどのようにできますか? たとえば、nginxには、この動作を構成するために使用できる特別なgeoモジュールがあります。 HTTP応答のコンテンツは、上記を間接的に確認します。

別のサイトにリダイレクト攻撃を行うのはなぜですか? 不公平な競争を行ったり、サイトにトラフィックを集めたりするなど、商業的な理由など、多くの理由が考えられます。
同時に、被害者のサイトの所有者は、自分のIPアドレスからサイトが開いて正常に動作するため、 攻撃を受けているものを知ることさえできないかもしれませんが、他のユーザーからは...
混乱しました。 そして、連絡先で指定された電子メールに書き込みました。 そして翌日、つまり今日、サイト管理者から連絡があり、問題の詳細を説明しました。 そして、この投稿を書いて写真を準備している間、サイトのページから悪意のあるスクリプトを削除することで問題はすでに修正されていました!
おそらく、悪意のあるコードがサイトにどのように表示されるかを学習することに興味があるでしょう。
結論:
- このようなスクリプトの導入を防ぐ最も効果的な方法は、サードパーティのサイトからダウンロードしたリソースを使用しないことです。
- それらの実装を除外するには、HTTPヘッダーContent-Security-Policy (古いバージョンのChromeの場合はX-WebKit-CSP 、古いバージョンのFirefoxおよびIE 10-11の場合はX-Content-Security-Policy)を使用してコンテンツセキュリティポリシーを適用することもできます。相対的な若さとステータスのために、推奨候補は古いブラウザではサポートされていません 。
- また、可能であればバグレポートを送信して、インターネットをよりクリーンにすることができます。
PS彼は、攻撃を受けているサイトを示すことは不適切であると考えました。