どこよりも早いMovableType4.23の差分を調べる会

ぴろり上西 2008年12月03日

パワフルなCMSを98,000円で。

Movable Typeで承認フロー、会員サイト構築ができます。

 こんにちは。上西です。4.23(゚∀゚)キターということで、早速、前のバージョンとの差分を取ってみました。Let's diff!
 今回はXSS(Cross Site Scripting)脆弱性への対応ということで、プログラム的な変更よりもテンプレートでの細かい変更が目立ちます。追加されたたくさんの escape="html" に涙がちょちょ切れそうになります。シックス・アパート株式会社の中皆さん、本当にお疲れ様でした。

  • テンプレート中で、ユーザに入力を許す部分(ユーザ名やURL)の出力時にHTMLエスケープ指定が追加されている
  • プログラム中で、フィールドに入力された文字でXSSで利用されうる文字をエラーとして扱うようになった
  • 本体のスキーマバージョンの変化はなし
  • MT::Util::remove_html のロジック変更
  • テンプレートタグ中でも外部からの入力値を使用する際にエスケープを行っている

 当初、MTの管理画面で入力されるフィールドは、システムにログインできる人間が使うだけだったこともあって、このあたりの作りこみが甘い傾向があります。コミュニティパックが公開されて以降、一般のビジタにもブログを与えることができるようになり、この管理画面の機能の一部が完全な第三者にも曝されるようになったわけです。そのため、悪意のある第三者によって、フィールドにシステム管理者の意図しないような値を入力されると、これらの部分が脆弱性として現れやすいようです。前回のHack-a-thonでもそのような裏話がありました。ざっとみた感じでは網羅的にHTMLエスケープが施されているようですが、プログラムがこれだけ巨大化してしまった今、もしかしたら、またすぐに4.24が出ちゃうかもしれませんね!?(泣)

投稿者 ぴろり上西 : 12/03

Movable Typeを利用したウェブサイト開発はお任せください!

100の企業が認めた成功へ導くCMS構築

スカイアークは創業以来6年間、Movable Typeを一貫して活用し、お客様の様々なウェブサイトをCMS化しました。MTを利用したウェブサイトはスカイアークにお任せください。

MT・CMS構築について詳しく見る

コメント(1)

最初から変数出力がエスケープされる動作を
デフォルトにしてればよかったのになーと思います。
HTML::Templateだとdefault_escapeつけとけばいいですが

お問い合わせはこちらから お電話でのお問い合わせ03-5475-5101

MTエンジニアブログ

MTCMS Smartキャンペーン!
承認フロー付きCMS「MTCMS Smart(98,000円)」をお買い上げの方、MTライセンス1本がタダに!

配布プラグイン一覧

MultiFileUploader
複数ファイルを一括でアップロードできるMovable Typeプラグイン
ParentalInclude
MT5でウェブサイトとブログのテンプレート連携を便利にするプラグイン
DuplicateEntry
ブログ記事を複製または移動するMovableTypeプラグイン
NotifyAnythingChanged
何かが起きたらメールで通知するMovableTypeプラグイン
rssEntry
取込んだRSSをエントリとして書き出すMovableTypeプラグイン
AutoTagging
面倒な記事のタグ付けを自動化する
FutureRebuild
日時を指定してページを再構築する
EntryImExporter
エントリをCSVに書出したり、CSVから一括登録するMovableTypeプラグイン
MailPack
Movable Typeで簡単携帯投稿!メール投稿プラグイン
DirectoryUtility
カテゴリ・フォルダの階層を表示したり、親フォルダを表示したり、何かと便利なプラグイン
CSVList
CSVデータを整形して表示する
PageBute
静的ページ用ページ分割プラグイン

注目記事

RSS

ページの先頭へ戻る