すたしょ日記と迷惑トラックバックをめぐる冒険すたしょ日記

すたしょ日記と迷惑トラックバックをめぐる冒険

先日、spamトラックバック対策のために、URIを変えました。しかし1日も経たないうちに新たなspamがやってきてしまいました。

もし逆に自分がスパマーだったらどうやってトラックバックURIを探し出すだろう?と思っていました。http://で始まる文字列を手当たり次第に打ちまくるのもひとつの方法ですが、ログを見たところ、404エラーはないので確実にトラックバックURIだけを拾い出しているように思えます。何か見落としていることがありそうです。

HTMLソースを見なおしてみると、トラックバックURIが書かれている部分がid="trackback-info"属性を持つ要素でマークアップされていることに気づきました。MTで構築しているサイトは、手を加えない限り同じ属性値が用いられているはずです。少なくとも私がスパマーだったらこの手がかりは見逃せません。

ということでトラックバックURIを囲む要素(dl要素)のidを別の名前に変えました。これでspamが来なくなれば私の対策は当たりのはずですが。。。

対策を取ってから数日はspamが来なくなり(同時にURIも変えていた)、「これで成功か?」と思ったのもつかの間。再びspamが打ち込まれるようになりました。

もうダメかと思いましたが、ここであきらめたら試合終了。いろいろ調べてみたところ、偶然抜け穴を発見しました。すでにエントリーやインデックス、その他のRDFなどからもトラックバックURIにつながる情報は消し去ったつもりでしたが、カテゴリページや日付ページに情報が残っていることを見落としていました。具体的にはテンプレートで「<$MTEntryTrackbackData$>」と書かれている部分を消していなかったのです。これが、実際にページとして吐き出されると

<!--
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
         xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description
    rdf:about="http://sakura-net.net/diary/2007-03/index.htm#000424"
    trackback:ping="http://sakura-net.net/mode/usa.mimi/305"
    dc:title="宮崎羽衣「まもらせて...」発売記念イベント@代アニアキバ校"
    dc:identifier="http://sakura-net.net/diary/2007-03/index.htm#000424"
    dc:subject="イベントレポ"
    dc:description="2007年3月18日に東京秋葉原のゲーマーズ(会場は代々木アニメーション学院アキバ校)で開催された宮崎羽衣NEWシングル「まもらせて・・・」発売記念イベントのレポです。"
    dc:creator="****"
    dc:date="2007-03-18T20:38:10+09:00" />
</rdf:RDF>
-->

のようにはっきりとトラックバックの情報も晒されてしまいます。ということでテンプレートからこのタグをさくっと削除しました。今度こそ来なくなればいいのですが。削除して3日経ちますが、今のところは1件も打ち込まれていないようです。

ちなみに、トラックバックのロボットは、UAがlibghttp/1.0TrackBack/1.6の2種類しかきていないので、.htaccessを使えばアクセスを禁止すること自体は容易に可能です。


トラックバック

この記事へのトラックバックURI
http://sakura-net.net/mode/neco.mimi/364

コメントを投稿

個人情報


©2007 aika
このページの著作権はStudio Chocolatが有しています。
Studio Chocolat : http://sakura-net.net/
aika:mail@sakura-net.net