Ver. 3.1.43 リリースのお知らせ
この記事では、2025年4月8日にリリースした Ver. 3.1.43 の修正内容について紹介いたします。
現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。
本リリースでは、セキュリティ上の問題を修正しております。 当該脆弱性をご報告いただいた haidv35 (Dinh Viet Hai) 様に感謝申し上げます。
We appreciate the report of this issue by haidv35 (Dinh Viet Hai) , which helped improve the security of this product.
Ver. 3.1.43 リリースノート
変更点
- CMS-7109 デシリアライズ可能なクラスを追加できるHookを追加(unserializeAllowedClasses)
- CMS-7101 400ステータスのエラー画面を用意(themes/system/400.html)
修正点
- CMS-7110 POSTモジュール動作時は、そのリクエストではキャッシュを利用しないように改善
- CMS-7098 エントリー公開時にページキャッシュが削除されない問題の修正
- CMS-7104 open_basedir設定時に、ファイル存在確認でパスの内容によってはphpエラーが発生する問題を修正
- CMS-7111 .htaccess を apache2.4 の書き方に統一 & IPアドレス制限や実行php制限の記述を追加
- CMS-6890 スマホで、ダイレクト編集をするとユニット部分がスクロール出来ない問題を修正
- CMS-7113 ブログコードが1文字だと、メディアのダウンロードリンクが切れてしまう問題を修正
- CMS-7114 フォームのコンバーターオプションで、不正な入力があるとphpエラーが発生する問題を修正
- CMS-7103 バックアップ機能のディレクトリ・トラバーサル対策(管理者限定)
- CMS-7115 エントリー編集者画面のXSS対策(投稿者以上限定)
一部リリースノートの詳細な内容
CMS-7101 400ステータスのエラー画面を用意(themes/system/400.html)
入力内容が不正な場合に400ステータスのエラー画面を出力するようになりました。また以下テンプレートで400エラー画面をカスタマイズすることができます。
themes/ご利用テーマ/400.html
CMS-6890 スマホで、ダイレクト編集をするとユニット部分がスクロール出来ない問題を修正
スマホでダイレクト編集モードに入ると、ユニット部分がスクロールできず、スマホではユニットが画面いっぱいに広がってるため、スクロールが実質できない不具合を修正しました。
.htaccess を apache2.4 の書き方に統一 & IPアドレス制限や実行php制限の記述を追加
.htaccessの記述をapache2.4の記述方法に統一し、IPアドレス制限や実行PHP制限のコードを追加しました。デフォルトではコメントされている部分もあるため、必要に応じて設定ください。
IPアドレス制限
# ---------------------------
# 全体のIPアドレス制限
# ---------------------------
# <RequireAll>
# Require not ip xxx.xxx.xxx.xxx
# Require not ip yyy.yyy.yyy.yyy
# Require all granted
# </RequireAll>
サイト全体で拒否したいIPアドレスを指定ください。デフォルトではコメントアウトで無効化されています。
index.php以外のPHPスクリプトを実行禁止
# ---------------------------------------
# index.php以外のPHPスクリプトを実行禁止
# ---------------------------------------
<FilesMatch "\.php$">
Require all denied
</FilesMatch>
<Files "index.php">
Require all granted
</Files>
index.php以外は実行できないようになっております。 下階層のディレクトリなどで、独自のindex.php以外のphpを動作させたい場合は、以下のように該当ディレクトリに.htaccessを設置ください。
# hoge.php と fuga.phpを許可
<FilesMatch "^(hoge|fuga)\.php$">
Require all granted
</FilesMatch>
実行可能なスクリプトをブロック
# ------------------------------------------------------------------
# 実行可能なスクリプト (PHP, CGI, Perl, Python, Shell, EXE) をブロック
# ------------------------------------------------------------------
# RewriteCond %{REQUEST_URI} !^/index\.php$ [NC]
# RewriteCond %{REQUEST_URI} !^/_setup/.*\.php$ [NC]
# RewriteCond %{REQUEST_URI} !^/other2/index\.php$ [NC]
# RewriteCond %{REQUEST_URI} \.(php|cgi|pl|py|sh|exe|bin|dll|bat|cmd|msi|jar)$ [NC]
# RewriteRule ^.*$ - [F,L]
CMSのindex.php以外のスクリプトは実行できないように設定します。制限がきついため、デフォルトはコメントアウトされています。 よりセキュリティを高める場合に、コメントアウトを外してください。
最後に
該当する問題がございましたら、できるだけ早めのバージョンアップをご検討ください。 ご報告いただいた haidv35 (Dinh Viet Hai) 様を含め、当プロジェクトの安全性向上にご協力くださった皆さまに深く感謝申し上げます。
今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。
今後ともどうぞよろしくお願いいたします。