パンプキンスパイスラテ

IT系のことが多めの日記帳です

WordPressの危険なスクリプト「wp-mail.php」

WordPressのメール投稿機能。わざわざ管理画面にログインしなくても、使い慣れたメールでブログを更新できるのはすごく便利ですね。
でもでも、WordPressはメールを送っただけでは、ブログが更新されないようです。

実はメール送信後に、 http://(WordPress の URL)/wp-mail.php というファイルに、毎回アクセスする必要があります。この URL を叩くと PHPスクリプトが作動して、メールボックスにアクセスしてくれるのです。

WordPress 2.7 のメール投稿機能を使う

なんと、バッチを動かす必要があるようです。しかも、外から誰でもアクセスできる所にあるという!
まぁ、誰にでもアクセスできてしまうというだけだったら、まだ良かったのですが、なんと・・・!?

ここで気になったのは、wp-mail.php にアクセスしたときに投稿したメールアドレスやタイトル(文字化けしていますが)が表示されてしまうことです。しかも、WordPress へのログインの有無に関係ありません。

WordPress 2.7 のメール投稿機能を使う

なんてこったい(>_<)
そのバッチ処理を動かす際に画面上に投稿したメールアドレスやら、内容が表示されてしまうようです。
こ れ は ひ ど い 。
試しにいろいろなWordPressで構築されてるっぽいブログの「wp-mail.php」にアクセスしてみました。

「新しいメールはありません。」
↑なんの問題もなくアクセスできてしまいました。
これでメール投稿があった場合は、メールアドレスが表示されてしまいます。

「おっと、もう少しごゆっくり!そんなになんども新しいメールをチェックしなくても大丈夫です。」
↑同じところに2回アクセスしたところ。
このスクリプトにアクセスが集中して、メールサーバーの負荷があがらないような工夫な気がします。

「この操作は管理者によって無効化されています。」
↑ちゃんとなんらかの対処をしているブログ。

結論

WordPressを使うときは、「wp-mail.php」について対応を考える!

追記2010-07-19

管理画面とブログページのディレクトリを分けておけばある程度は防げるようですね。