MovableType 3.34 の修正内容について

Posted by
ぴろり
Posted at
2007/01/24 00:22
Trackbacks
関連記事 (0)
Comments
コメント (1)
Post Comment
コメントできます
Category
MovableType カテゴリ
Movable Type 3.34日本語版の提供を開始

本日より、Movable Type 3.34日本語版 (以下3.34-ja) の提供を開始いたします。
3.34-jaの主な修正点は、3.33以降に発見されたセキュリティ上の不具合への対策と、FastCGIサポートの向上です。

 今回リリースされた 3.34ja は XSS 脆弱性の修正が主なポイントになります。 また,バージョンアップ作業は既存のインストールディレクトリにファイルを全て上書きするだけで作業が済みます。 3.33 以前をお使いのユーザは速やかにバージョンアップされることを強くオススメします。
 …とまぁこの程度の内容は他の記事にお任せするとして, 折角なので 3.34ja での修正内容についての変更点と併せて調べてみました。 一応, 技術系サイトですし(笑

この記事をはてなブックマークに追加する この記事のはてなブックマーク数 | この記事をlivedoorクリップに追加する この記事のlivedoorクリップ数 | この記事をYahooブックマークに追加する この記事のYahoo!ブックマーク数 | この記事をdel.icio.usに追加する | Twitterにポストする

3.34ja の変更点と変更されたファイル

  3.33ja と今回リリースされた 3.34ja の差分を取ると,  かなりの数のファイルが変更されているのがわかります。 しかし殆どのファイルについては文中のバージョン表記が変化しているだけで, 以下に述べるファイル以外は実際の動作には何ら影響していません。 SixApart から公表された更新内容をこれら機能面で変更のあったファイルと合わせて見てみます。

Fastサポートの向上
 FastCGI 関係の モジュールとの親和性が高められています。 従来は を直接書き加える hack を要するなど導入への敷居が高かったのですが, システムのブートストラップに部分に Fast 用のコードが追加されています。 Fast の稼動を検知してクラスオブジェクトの初期化コードを切り分ける処理が追加されています。 Fast を使っていないユーザには特に影響ありません。
  • lib/MT/Bootstrap.pm … Fast 用コードが追加
スキーマバージョンの訂正
 英語版 3.34beta1 を使っていたユーザに関係します。 英語版 3.34beta1 で変更された箇所が 3.34ja リリース時にアンドゥされたためにファイルの差分はありません。 3.33ja からバージョンアップするユーザには影響しません。
【重要】不正なタグによるスクリプト実行の可能性
【重要】MTCommentPreviewIsStaticタグの機能を利用したスクリプト実行の可能性
【重要】NoFollowの無効化またはアンインストールに伴うサニタイズ処理の不具合
 今回のバージョンアップの主となる部分です。 NoFollow に関する指摘はつい先日, MT で nofollow プラグインを無効にすると危険 という記事がありました。…段階で気付けよ!てな感じもしますが。
 外部からシステムに渡される多くのパラメータ(のデータフィールド)に対して, 改行コードとヌル文字(%00)に対するサニタイズ処理が追加されています。
  • php/lib/sanitize_lib.php … ヌル文字に対するサニタイズ処理追加。ダイナミックパブリッシング環境で使用されます。
  • lib/MT/Template/Contexthandler.pm … XSS 脆弱性に関する修正
  • lib/MT/Sanitize.pm … ヌル文字に対するサニタイズ処理追加,他
  • lib/MT/App.pm … リダイレクトされた URL に対する改行コードのサニタイズ処理追加
  • lib/MT/App/Comments.pm … IP-ban 関係のバグ修正, URL 中の改行コードのサニタイズ処理追加,各入力フィールド中のヌル文字に対するサニタイズ処理追加
  • lib/MT/App/Trackback.pm … 各入力フィールド中のヌル文字に対するサニタイズ処理追加
再構築オプションの表示
 で追加された再構築オプション文字列が エスケープされておらず, ドロップダウンリストに正しく表示されていなかった不具合の修正です。
  • tmpl/cms/rebuild_confirm.tmpl … 文字列を エスケープする記述が追加
のアップグレード機能の
 ちょっと自信が無いのですが,おそらくは StyleCatcher での修正かと思います。 がごっそり抜けていたようです。

StyleCatcher は使ったことが無いので詳しいを求めています

その他の変更
 他,文言の追加・修正などの細かな変更があります。
  • lib/MT.pm … バージョン番号が"3.4"に変更。
  • lib/MT/ConfigMgr.pm … ヘルプ参照先 URL の更新
  • lib/MT/L10N/*.pm … 辞書(Lexicon)の文言追加・修正
  • lib/MT/Template/Context.pm … フィルタの処理順序に関するコード追加?
  • plugins/nofollow/nofollow.pl … "authenticated" → "trusted" に文言修正
  • mt-static/js/*.js … 辞書(Lexicon)の文言追加

 現在,3.33 をお使いであれば全てのファイルを上書きコピーしてしまうのが簡単です。 小粋空間で 3.34 になって更新されたファイルだけを配布されているので,こちらを使うのも一つの手かと思います。 なお,ファイルに個別に改造を加えているなどの事情があれば, 上に挙げたファイル一覧を参考に必要なファイルだけを慎重に上書きしてください。
 また,3.34ja への更新で tmpl 以下のファイルは殆ど更新されていません。 そのため従来の BigP や Transformer 機能を用いるも含め,多くのがそのまま動作します。

3.2 以前のバージョンへの影響

 以前, 3.3 が公開された時に 3.2 系列および 3.1x 系列へのパッチの適用に関して, "MovableType3.1x系にMT3.21用脆弱性パッチを適用するには" という調査記事を書きました。 ただ今回リリースされた 3.34 では過去バージョンのファイルとの間に変更点が多く, 個別にファイルを上書きする程度で対応できるレベルではありません。 そのため,もし古いバージョンのシステムをお使いであれば,早急にバージョンアップされることをオススメします。

今回のバージョンアップはそれほどになっていないみたいだけれど, 修正された脆弱性が影響する範囲はかなり広範囲に及ぶことがわかる。 ところで多くの IT ベンダ,特に MT を飯のタネにしているようなところは, そもそも今回の脆弱性についてきっちり説明と検証ができているんだろうか…?  ちと心配。

ちなみに Open .net はが多すぎて 未だに 3.151 で稼動しているわけですが。 今回「も」個別にファイルにパッチを当てることになりそうです(血涙


この記事を読んだ人はこんな記事も読んでいます 記事リコメンデーションについて

その他の関連する記事


関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

寄せられたコメント (全 1 件中、最新 5 件まで表示しています)

Posted by
ぴろり ◆OLEEi.VOX.
at
2007/01/24 12:00
ID
wnrMxE2Q

…結局,3.34にシステムを移行することにしました。
動かないプラグインがあったりモジュールを全部hackし直したりで大騒ぎです。
まだ修正し切れていないためサイト閲覧に不具合があるかもしれません。
ご迷惑をおかけしますm(_^_;)m

コメントを投稿する

 
 (匿名可/必須/公開)
 (匿名可/必須/非公開)
 (必須)
コメントスパム防止のため投稿前に ランダムな数字 CAPTCHAについて を入力してから投稿してください。お手数ですがご協力のほど宜しくお願いいたします。