すがブロ

sugamasaoのhatenablogだよ

SymRealWinOpenの謎を解明せよ!(匿名リサーチ200X風に)

覗きが大好きな人はよくWebのHTMLのソースを覗いてしまうと思うんだけど、そうやって覗き見したソースに以下のようなJavaScriptが入っているケースがある。

<!--

function SymError()
{
  return true;
}

window.onerror = SymError;

var SymRealWinOpen = window.open;

function SymWinOpen(url, name, attributes)
{
  return (new Object());
}

window.open = SymWinOpen;

//-->

がHTMLの上部に、下部には

<script language="JavaScript">
<!--

window.open = SymRealWinOpen;

//-->
</script>

が挿入されている。
たまに見かけていたんで、ウィンドウがすべて表示されたかのチェックかなんかをしてるお決まりのスクリプトなんだろうと思っていたんだけど、

 実はこのコードを挿入している犯人はNorton Internet Securityの広告ブロックです。ポップアップ広告はかなり嫌われていますが、このコード挿入の目的はそれを抑制することのようです。どうやらページを読み込む際自動的に挿入されているらしく、見たこともないソースがあるとトラブルになることも。

ということらしい(参考:http://www.exfiction.net/~nojimake/note/note09.html)。
SymRealWinOpenのSymってSystemの略だと思っていたんだけど、どうやらSymantecの略だったらしい。
くそっ。世の中のJavaScriptのレベルの高さに愕然としていたんだけど、取り越し苦労だったんだなんて……。
まぁ、結果がわかってよかったよかった。