追記:最近、なぜか最新の記事(例えば、この追記時点で最新の正式版0.9.1について:「b2evolution 0.9.1 の日本語対応」)ではなく、この古い記事のみを紹介されているサイトが多いようで。そのようなサイトからおいでの方はお手数ですが、メニュー欄から最新の記事を探してみてください(カテゴリ欄で b2evolution を選択するか、最新の投稿欄で探すと見つけやすいと思います)。
b2evolution の日本語対応に関するメモ。
(以前の記事「b2evolution 0.9.0.11 の日本語対応」から変更を加えています。特に「通知メール - 言語汎用」(3月15日16時30分に再変更)、「トラックバック - 推奨(日本語限定)」、「経由検索エンジンのキーワード」は異なる内容になっています。これら三点について、すでに以前の「b2evolution 0.9.0.11 の日本語対応」で示した変更を行っている場合は、お手数ですが元に戻してから、当記事で示す変更を行ってください。)
(追記:「b2evolution 0.9.0.11以前にSQLインジェクションの脆弱性」に記載しました修正ファイルは忘れないように適用してください)
b2evolution は適切な設定を選択すれば、そのままで使ってもそれなりに日本語が使えます。
しかし、ブックマークレット、トラックバックの受信、コメント等があった際の通知メールの文字コード処理などで問題が発生する可能性があります。
さらに、こちらでは検証しておらず予想でしかありませんが、メールでブログに記事を投稿する機能を使う際に、文字コード処理が行われないのでおそらく正常に書き込めないと思います。これは、私は今のところ使う予定の無い機能ですので、どなたかが調査してくださると嬉しいです。
バージョン0.9.0.11について、私が行った対処を書いておきます。
他の環境でも通用するかは不明です。
(XREA.COM で使用する場合は、XREA.COM 特有の b2evolution 設定 も参照してください)
b2evolution 0.9.0.11およびそれ以前のバージョンに、SQLインジェクション(不正なSQLクエリを外部から送り込まれることにより、データベース上に保管している設定を書き換えられたり、ユーザ情報等の見られてはいけないデータが表示されてしまう)のセキュリティ欠陥があることが、r0ut3r氏により発見・指摘されました。
(Secuniaのサイトで1月6日付で勧告文書が公開されています。http://secunia.com/advisories/13718/)
1月7日に b2evolution公式サイトでのアナウンス も出ています。
問題の詳細については、b2evolution Forums(公式フォーラム)の投稿「Security issue!」に修正方法の記載があります。ただ、このフォーラム記事にも説明されているように、記事内で紹介されている修正ファイルを使用すれば、別の(より軽微な)脆弱性の修正も同時にできますので、手作業でこの欠陥の修正だけを行うのではなく、できるだけ修正ファイルを利用してください。
(追記:配布されている修正ファイルはバージョン0.9.0.11用です。過去のバージョンを使用されているのならば、まず0.9.0.11にアップデートしてください。もし、アップデートできない事情がある場合は、フォーラム記事を参考に、該当する部分を手作業で修正してください)
前述フォーラム記事「Security issue!」にありますように、修正ファイルは http://prdownloads.sourceforge.net/evocms/b2evo-0-9-0-11-fix.zip?download からダウンロードできます。zipファイルを展開して出てきた2つのファイルを、/b2evocore フォルダの既存のファイルと置き換えてください。
(これら2つのファイル、_class_itemlist.php , _functions_bposts.php は、当サイトで紹介している日本語周りの改造では触っていないファイルですので、そのまま置き換えて問題ありません)
なお、少々蛇足気味ながら、当サイトの状況についても記述させていただきます。
偶々、昨年12月中旬からPHPを対象にしたウィルス等による攻撃が話題になっていたこともあって、当サイトのApacheログを継続的に監視していましたが、この欠陥に関わる攻撃は少なくとも当サイトでは昨年12月中旬から現時点までの期間には観測されていません(見当違いな攻撃は多々見られましたが)。データベースの内容も、現時点で不審な点は見られませんでした。
また、b2evolution Forums での情報公開直後に、当サイトに修正を施しましたので、現在ではこの欠陥・脆弱性について対処済みとなっています。
2005年3月14日追記:この記事の内容に改訂を行い、新たに記事「b2evolution 0.9.0.11 の日本語対応(改訂)」を書きました。今後は、改訂記事のほうをご覧ください。
b2evolution の日本語対応に関するメモ。
ほぼ 0.9.0.10 の日本語対応 と同じです。行数が若干異なるところがあるだけで、わざわざ書くまでもないかと思いましたが、一応書いておきます。Webmaster日記 のNishizaka様からいただいたご指摘などから、「トラックバック」と「経由検索エンジンのキーワード」を変更しました。変更内容は私のコメントを参照してください。
10月20日追記:「トラックバック」部分を再度変更しました。
b2evolution はそのままで使ってもそれなりに日本語が使えます。
しかし、ブックマークレット、トラックバックの受信、コメント等があった際の通知メールの文字コード処理などで問題が発生する可能性があります。
さらに、こちらでは検証しておらず予想でしかありませんが、メールでブログに記事を投稿する機能を使う際に、文字コード処理が行われないのでおそらく正常に書き込めないと思います。これは、私は今のところ使う予定の無い機能ですので、どなたかが調査してくださると嬉しいです。
バージョン0.9.0.11について、私が行った対処を書いておきます。
他の環境でも通用するかは不明です。
(XREA.COM で使用する場合は、XREA.COM 特有の b2evolution 設定 も参照してください)
blog.bulknews.net で Trackback の脆弱性についての勧告 という記事が出ています。
悪意のあるスパマーは、ウェブサイトのビジターのマシンから javascript を使って Trackback Ping SPAM を送らせることができる (DDoS 的であると言える)。
詳細は当該記事でご確認ください。
ところで、この情報は英語圏には(というか、非日本語圏には)伝わっているのでしょうか。日本語圏でだけ対策されても、欧米発祥のblogツールが多くありますから問題が残りそうです。
などと言いつつ、私はちゃんと英訳できる自信がないので報告しない横着者です。申し訳ない。
記事で示されている「考えられるソリューション 3,4」のパッチの b2evolution 版を作ってみました。
完全なものとは言えないかもしれませんが、試案ということでご理解ください。問題がありましたら、お報せいただけると助かります。
/htsrv/trackback.php の33行目、
@header('Content-Type: text/xml');
の後に
if ( isset($_SERVER['HTTP_REFERER']) || strpos($_SERVER['HTTP_USER_AGENT'], 'Mozilla/') === 0 ) {
trackback_response(1, 'Trackback ping with invalid headers: denied.');
}
という3行を追加してください。
その後、8月11日に Trackback の脆弱性についての勧告 は更新され、上記拙作パッチ案の元に当たるMovable Typeとblosxomのパッチが削除されました。一部ツール等からのトラックバックを受け付けなくなる副作用を考慮した模様です。 拙作パッチ案を使用される場合は、副作用があることを考慮の上で使用するかどうかを判断されるようお願いします。 また、対策の改良案として リファラつきの Trackback に確認画面 が提示されています。副作用の少ない対処法をお探しの方は、ご覧になってみてください。 私のほうで、この方式のb2evolution版を作る予定は今のところありません。Apacheのmod_rewriteが必須になっているため、動作しない環境も多いと思いますので、そのまま移植するのはちょっと気が乗りません。(類似の効能があって、汎用性の高い方法を考えればいいのでしょうけど、知識とか気力とかが足りません)
b2evolution の日本語対応に関するメモ。(ほぼ 0.9.0.9 の日本語対応 と同じです)
b2evolution はそのままで使ってもそれなりに日本語が使えます。
しかし、ブックマークレット、トラックバックの受信、コメント等があった際の通知メールの文字コード処理などで問題が発生する可能性があります。
さらに、こちらでは検証しておらず予想でしかありませんが、メールでブログに記事を投稿する機能を使う際に、文字コード処理が行われないのでおそらく正常に書き込めないと思います。これは、私は今のところ使う予定の無い機能ですので、どなたかが調査してくださると嬉しいです。
バージョン0.9.0.10について、私が行った対処を書いておきます。
他の環境でも通用するかは不明です。
(XREA.COM で使用する場合は、XREA.COM 特有の b2evolution 設定 も参照してください)