まだ重たいCMSをお使いですか?
毎秒1000リクエスト を捌く超高速CMS「adiary」
毎秒1000リクエスト を捌く超高速CMS「adiary」
2019/03/12(火)adiary Version3.23 リリース情報
- Ver3.20以降の変更による累積的なバグ修正、httpd/EXEの修正が多めです。
Ver3.23の変更点
- Pocketのシェア数が取得できなくなっていたので取得機能を削除しました。*1
- デフォルトアイコンとデフォルトロゴを変更しました。
- 静的HTML出力が無効のとき、管理者以外にはエラーメッセージを表示しないように変更。
- 管理メニューの流れを少し改善しました。
- 記事編集画面でファイルアップロードの進捗を表示するよう変更。
- アルバムと記事編集画面のファイル選択ボタンのデザインを変更。
- 【アルバム】アップロード中の進捗を表示するように変更。
- 【アルバム】ファイルリネーム時に、画像以外はサムネイルを再生成するよう変更。
- 【アルバム】ファイルリネーム時に del キーが使用できない。
- 【httpd/EXE】Socket を STDIN に接続するのを止め、若干高速化しました。
- 【httpd/EXE】index.htmlを有効化しました。
- 【httpd/EXE】大きいファイルをダウンロードする場合、すべてメモリに展開しないようにしました。
- 【adiary.conf.cgi.sample】大きいファイルはテンポラリに書き出すよう変更。
- 【adiary.conf.cgi.sample】<$Form_options.multipart_use_temp>を<$Form_options.use_temp_flag>に変更。*2
- 【plugin】非公開コメントにヘルプを出せる機能を追加。
- 【Fix/plugin】Twitter通知プラグイン。2018/06/13以降、新規認証に失敗していた。
- 【Fix/Ver3.20-】デザイン編集時に、ヘッダが常に標準のまま(非カスタム状態で)出力されてしまう。
- 【Fix】稀に最初のファイルアップロードに失敗することがある。
- 【Fix】静的出力時、ヘッダにゴミが出力される。
- 【Fix】致命的エラーメッセージ(初期ディレクトリ作成失敗)がきちんと表示されない。
- 【Fix】大きなファイルを送信されたとき、<$Form_options.multipart_use_temp_dir>を設定していても、すべてメモリに展開していた。*3
- 【Fix】テンポラリとして /tmp などパーティションが異なるディレクトリを指定すると、アップロードに失敗する。
- 【Fix】コメント欄でTABが入力できないことがある。
- 【Security/httpd/EXE】HTTP_HOSTヘッダにタグを挿入可能だった。*4
- 【Security】HTTP_HOSTヘッダに虚偽の設定をした上でコメントを投稿するとRSSのホスト名部分を外部から書き換えられてしまう。*5
- 他
Hostヘッダインジェクションについて
今回のバージョンアップで、RSSのホスト部分を第3者が書き換え可能になるセキィリティホールが修正されています。
- 一般的なレンタルサーバでは問題ありません。
- 独自サーバ等でも、(最初以外の)VirtualHost部分にadiaryの設定がある場合は問題ありません。
- adiary.env.cgiで <Server_url> が設定されている場合問題ありません。
いわゆるHostヘッダインジェクションと呼ばれる問題で、Hostヘッダからサーバのホスト名を設定する仕様が原因になっています。幸い、Host名として不正なものはサーバソフトウェアが弾くのでJavaScriptを埋め込まれるといった問題は起こりませんが*6、RSSのURLが書き換えられる問題はおきます。
対策としては、最初のインストール時に HTTP_HOST から信頼できる URL を生成し記録しておくなどの方法が有効です。*7