毎秒1000リクエスト を捌く超高速CMS「adiary」
2010/08/17(火)adiary V2.09~とIE8での組み合わせでテキストエリア不具合
問題と修正方法
IE8を使用時、日記の編集画面やコメント投稿画面の表示がおかしい(textareaが後続の要素にかぶる)問題を修正しました。
Ver2.09~Ver2.13(Ver2.20C78SEの方はこちらを参照)をお使いの方は次のパッチを落としtheme/adiar.js と入れ替えてください。
- http://adiary.org/download/patch/adiary.js (2010/08/17 21:43ファイル差し替え)
※お手数ですが差し替え前にDLした方は再度DLしてください。
問題の詳細
IE8にはテキストエリアで文字を入力すると1文字入力ごとにエリア内が変にスクロールするという意味不明なバグがありました。そのバグに対するハックとして position:aboslute を指定する技があったのですが、いつの間にかIE8のtextareaバグが修正されたのか仕様が変わったのか、「position:abosolute」がそのまま正しく解釈されるようになっていました。
したがって、きちんとWindows UpdateされているIE8ではtextareaが「position:abosolute」となり後継の要素が上書きされてしまいます。
そのため、このハック自体を無効にしました。
2009/06/28(日)adiary セキュリティアナウンス
adiary Ver1.992~Ver2.08を第3者にレンタルしている場合、セキュリティ上重大な欠陥がありますので、直ちに以下の差分を適用してください。
adiaryを設置者個人で利用している場合はこの問題の影響を受けません。
問題の詳細
本来なら許可されない埋め込みテキストへのJavaScript等の記述が、トラストモードの設定に関わらず常に許可されていました。これは開発時のデバッグコードが、開発完了後もそのまま残り続けたことが原因です。
第3者にJavaScriptの埋め込みを可能とすることでセッションCookieの盗聴が可能になり、これによりadiaryを利用する他のアカウントをセッションハイジャックされる危険性があります。
修正の詳細
■修正前 $tag_escape->{allow_anytag} = 1; #$self->{trust_mode}; ■修正後 $tag_escape->{allow_anytag} = $self->{trust_mode};
2009/04/22(水)IE + UTF-8版での問題 (adiary Ver2.06)
adiary 2.06のUTF-8版使用時、IEでJavaScriptエラーが起こります。
JavaScript文字コードとHTML文字コードの一致させないと問題が起こるIEが原因です。念のため次のファイルの文字コードを UTF-8 に置き換えてください。
theme/resizeform.js
文字コード変換がよくわからないという人は、以下のファイルを解凍して上書きしてください。
2008/12/26(金)adiary Ver2.01~2.03のサムネイルバグ
adiary Ver2.01から2.03で標準付属した設定ファイルにミスがあり、その設定ファイルを使用した場合、サムネイルを記事に貼り付けると正しいリンクが作成されない不具合があります。
ファイル名 : uploader.conf.cgi
(修正前)120行目付近 <$v.upload_tag_thumbnail = "[image#small:%i:%d:%f:%f]"> (修正後) <$v.upload_tag_thumbnail = "[image:%i:%d:%f:small:%f]">
心当たりのある方は、現在使用中の uploader.conf.cgi のファイルをご確認ください。
ずいぶん前にご指摘いただいていたのですが、確認が遅れたために報告が遅れましたことをお詫び申し上げます。
追伸
もうすぐ Ver2.04 をリリースします。