[Mediawiki] スパムによる大量更新 (2) UserMerge


前回の続き。

手順(3)のUserMergeというextensionについて。

インストールすると特別ページに「利用者の統合と削除」という項目が追加され、利用者アカウントを別のアカウントに統合することのできる拡張機能です。
例えば利用者アカウントAをBに統合する際に、統合された側のAを削除することができる、というのがポイントな模様。
AをBに統合→CをBに統合→DをBに統合・・・と繰り返していけば、いつかはBの利用者アカウントのみが残る、ということですね。
現在まだ「利用者を削除する」という目的だけの機能はないようで、利用者を消したい時はこのUserMergeを使うのが唯一の策なのかも。

これはまだMediawikiには標準実装されていないようで、Mediawikiサイトからダウンロードが必要です。
Mediawiki – Extension:UserMerge
mws2
↑ここからダウンロード。

ダウンロードしたtar.gzをSSHでサーバ上の「extension」ディレクトリに解凍するか、ローカルで解凍して「extension」ディレクトリにアップロードします。

その後LocalSettings.phpに、先ほどのMediawiki – Extension:UserMergeページに書いてあるコードをコピペし、
mws3
上書きアップロードすれば管理者としてログインした際、特別ページに「利用者の統合と削除」が表示されるようになります。
mws4

「利用者の統合と削除」のページはこんな感じ。
mws5
利用者Aを利用者Bに統合した上でAを削除する場合の記入例です。
「利用者の統合」ボタンをクリックすると、Aのユーザーアカウントが削除され、BにAの投稿履歴が統合されます。

ただ、これで1件1件消していくには3万件近く利用者が登録されてしまっているので、あまりにも遠い道のり・・・
いい策を探しているところです。

[Mediawiki] スパムによる大量更新 (1)


ある日突然、Google Webmaster Toolsから妙なメールが届きました。
wmt

内容としては「Googleはあなたのサイトでユーザーが作成したスパムを検出しました」っていうものなんですが、一応確認しておかねば!と久しぶり(3ヵ月ぐらいノーメンテでした…)にMediawikiで運営しているサイトを見てみたところ、トップページに英語の広告スパムが・・・!
mw-spam1
「最近の更新」を見てみてもこのありさま。ひどい。

特別ページの「統計」を見てみると、以前は150ページ程度しかなかった記事数がなんと70,000ページ近くに!!!(((゜Д゜;)))ヒエー
利用者も数人だったのが30,000人手前まで!!!
ものすごくニッチな対象のWikiなので、アカウントさえ作成すれば投稿・編集できるような設定にしていたんですが、これが大失敗だったようで。
「スパムならわざわざアカウント作成までして書き込みせえへんやろ~」とのんきに考えていたのが非常に甘かった。

スパム内容はTwitterでももはや有名になっているサングラス系から、Minecraftどうたらこうたらとか、「すぐに金を作る方法」とか、海外版出会い系サイトとか、そんな感じです。普通のスパムだ。面白くもなんともねえ。

記録を見ているとそのWikiでは4/1に最初にスパム利用者のアカウント登録が複数あり、4/4から怒涛の投稿と新規アカウント作成フェスティバルが始まったようです。くそー。

なんとかしなくては!と手順について考えてみましたが
(1)まず、一番スパムが目につくメインページを保護する
(2)スパム対策として、日本語での質問に回答しないと新規アカウントが作れないよう、拡張機能「ConfirmEdit」の「Questy Captcha」を有効にして、新規スパムアカウントが作れないようにする
(3)スパム利用者のアカウントをブロックしまくる
(4)スパムアカウントによる投稿を削除しまくる
この流れで行こうと。

(2)については
FREEWIKI – MediaWikiスパム対策
こちらを参考にしました。

(3)については、ブロックより利用者削除がいいと考えて拡張機能の「UserMerge」を使うことに。

(4)は同じくFREEWIKIさんを参考に、標準で付属している拡張機能「Nuke」を導入しました。

(2)に続きます!