カテゴリー
ネットの事件

コメントスパムの手の内が、スパマーのミスでダダ漏れに

Githubユーザーshanselmanさんが、「自分のブログにコメントスパムを書き込もうとしたスパマーが、バグか何かでこれを書き込んできたよ」と、スパマーが使っていたテンプレートらしきものを公開して、Hacker Newsでも話題になっています。

以下のような感じで100行以上あるのですが、

{
{I have|I've} been {surfing|browsing} online more than {three|3|2|4} hours today, yet I never found any interesting article like yours. {It's|It
is} pretty worth enough for me. {In my opinion|Personally|In my view}, if all {webmasters|site owners|website owners|web owners} and bloggers made good content as
you did, the {internet|net|web} will be {much more|a lot more}
useful than ever before.|
I {couldn't|could not} {resist|refrain from} commenting. {Very well|Perfectly|Well|Exceptionally well} written!|
{I will|I'll} {right away|immediately} {take hold of|grab|clutch|grasp|seize|snatch}
your {rss|rss feed} as I {can not|can't} {in finding|find|to find} your {email|e-mail} subscription {link|hyperlink} or {newsletter|e-newsletter} service. Do {you have|you've} any?

中身を読んでみると、よくブログのコメント欄に書き込まれるような、ブログ記事に対して何か感想を書いているようで、実際には記事の内容とは何の関係もない、どんな記事に対してもそれなりに通用するようなコメントを生成するための元ネタだということがわかります。冒頭のデータを訳してみますね。

毎日ネットの文章を{3|2|4}時間以上は{読んで|見て}{ます|る}けど、あなたの文章ほど面白いものを見たことはありません。とても役に経って{ます|る}。{私の意見では|個人的には|私の見るところでは}、もし{ウェブマスター|サイトオーナー|ウェブサイトオーナー|ウェブオーナー}やブロガー全員があなたのような良いコンテンツを作ったなら、{インターネット|ネット|ウェブ}は{もっと|ずっと}いい場所になるでしょうに。

こんな文章がorでたくさん並んでいるだけのデータですね。{}で囲まれた中の選択肢を乱数で選びながら吐き出していくだけで、毎回少しずつ違う感想コメントが出来上がり、というわけです。

公開ページに寄せられたコメントによれば、このデータから4,351,250,624、43億通りの重複しないコメントが生成しうるということ。コメント欄にRubyの、またPythonPHPでコメントを生成するスクリプトも公開されています。

少しずつ違う文章を作るのは、コメントをそのままGoogle検索してもまったく同じものが見つからないように、でしょうね。まったく同じものをいろんなブログや掲示板に書き込んでると、すぐにスクリプトの自動投稿だとばれてしまいますので。DisqusやWordPressのように、多数のブログに寄せられたコメントを集めてスパム判定しているようなサービス事業者がいるので、すぐに同定されてしまうのは避けたいのでしょう。

この手のコメントが何のために書き散らかされるかですが、たいていは投稿者の名前が「オンラインポーカー」とか「美女と会おう」とかの宣伝文句で、コメント者のサイトURLとしてその手のサイトのURLが入ってたりする、いわゆるブラックなSEOが目的なんですよね。

生きた英語の勉強にいいかも(笑)

プログラムで生成した文章を貼り付けるべきところを、なぜか元のスクリプトを貼り付けてしまうという、間抜けなスパム業者もいたものですが、このテキストデータ自体はいろいろと興味深いと思います。英語の勉強には使えますね。

いろいろなところで、同じような内容をいくつもの違う表現で言い換えるやり方が列挙されています。

I’m {bored to tears|bored to death|bored} at work

仕事が{泣くほど退屈|死ぬほど退屈|退屈}なんです。

とか、

{Thanks a lot|Kudos|Cheers|Thank you|Many thanks|Thanks}, I
appreciate it!

{どうもありがとう|称賛するよ|ども|ありがとう|多謝|ありがと} 感謝します!

などなど。生きた英語のシソーラスですね。英語を勉強中の人は読んでみるといいのでは

コメントスパムを防止するようなサービスやプラグインもたくさんあるので、それらを入れればこういう無意味なコメントは防いだり気付いたりできると思うのですが、それでも放置状態になったブログの過去記事などでこういうコメントが多数公開されているのを良く見ます。もし昔のブログのコメント欄を管理する気がないのなら、もうコメント欄を閉じてしまって書けないようにするほうが、ネット全体の使いやすさを守るためにはいいでしょうね。

関連

証拠を見せる – スパム対策のこんな方法

カテゴリー
ネットの事件

グーグル検索で特定の数式”-4^(1/4)”を与えるとアダルトサイトが表示されるバグが発見される

英語の質問サイトQuoraにて、「グーグルで”-4^(1/4)”で検索するとなぜかポルノサイトが出てくるんだけど?」という質問が話題になっています。実際に手元で検索してみても、アダルトサイトばかりが検索結果に表示されます。

-4^(1_4)

「セーフサーチ: 強」の時はさすがに何も出ないようなので、何がなんでもアダルトな結果を見たくない人にまで見せてしまうという事故にはならずに済んだ模様。

この質問を見て試してみた人たちの「俺も俺も」の証言が集まってきた結果、この数式に限らず、桁数の数字が3つ並んでマイナス記号を含む一定のキーワードで、この結果が引き起こされることが絞り込まれてきました。

この質問は先月にされたようですが、一昨日になってQuoraにGoogle検索チームのエンジニアが登場し、これがグーグル検索のバグであることを認めました。そして彼は、実際にどういう条件でアダルトサイトの検索になってしまうのかを説明しています。

アダルトサイトを出してしまう数式は、必ずしも

“-4^(1/4)”

という形である必要はなく、グーグル検索の内部では、この数式は

-4 “1 4”

と同等の扱いなんだそうです。この検索は、

  • -4 : 4を含まない
  • “1 4” : 1と4が連続している

の両方を満たすもの、という意味で、両者は矛盾しているので、検索結果は本来なら0件になるはずです。

しかし、この矛盾した検索指示にマッチしてしまうウェブサイトが、どうもグーグルのデータベースの中に存在し、それらが表示されてしまう。それこそが今回のバグの原因だ、ということだそうです。

なぜかわかりませんが、グーグルの内部で、今回表示されてしまうようなアダルト系のページが、これらの存在しないキーワードに結び付けられてしまっているようですね。

たとえば、こんなキーワードでも、症状は発生しました。

-1 “1 b”

Quoraの回答者たちが示した組み合わせとしては、以下のようなものも効くようです。

“1 2” -1
“1 2” -2
“9 8” -9
“h 3” -h
“15 12” -12
“apple 1” -apple
“apple 1” -1

Quoraの他のある回答者は、アダルトサイトは検索上位に出るための工夫(SEO)をものすごく頑張っているので、ありとあらゆるキーワードで引っかかるようになっているのだ、と予想していましたが、機械的にいろんなパターンを生成してグーグルを騙そうとした結果が、効いたという可能性もあるのかもしれません。

このバグは現在修正するよう頑張っている、ということなので、試せるのはあと少しの間かもしれません。

今修正に追われている中の技術者には気の毒ですが、これだけ広く使われている、現在世の中にある中でも最も複雑で大規模であろうwebサービスにおいてこんなバグが有り、しかもバグの出方が笑ってしまうような結果、というのはすごいですね。

これまでにもこのバグを見つけてた人は何百人といたのかもしれませんが、疑問に思ってしかるべきところで質問してみるというのは重要ですね。

via Google search bug returns porn results for 'contradictory queries' | The Verge