Ver. 3.1.43 リリースのお知らせ
この記事では、2025年4月8日にリリースした Ver. 3.1.43 の修正内容について紹介いたします。
現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。
本リリースでは、セキュリティ上の問題を修正しております。 当該脆弱性をご報告いただいた haidv35 (Dinh Viet Hai) at Viettel Cyber Security 様に感謝申し上げます。
We appreciate the report of this issue by haidv35 (Dinh Viet Hai) at Viettel Cyber Security, 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) at Viettel Cyber Security 様を含め、当プロジェクトの安全性向上にご協力くださった皆さまに深く感謝申し上げます。
今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。
今後ともどうぞよろしくお願いいたします。
スライドショー(bxSlider)
a-blog cmsでは、画像のスライドショー(bxslider.js)が標準で実装されています。(Ver. 1.6.0より)
1. 設定の編集
この機能の設定は、/js/config.jsの以下の箇所にあります。設定を変更する場合は、適用しているテーマ内にJavaScriptファイルを別途作成してください。詳しくは「組み込みJSについて:設定を編集する」を参照してください。
//----------
// bxslider
bxsliderMark : '.js-bxslider',
bxsliderConf : {
mode : 'horizontal', // horizontal | vertical | fade
speed : 800,
captions : true,
auto : true,
pause : 6000
},
bxsliderMark | bxsliderを適用させるHTMLの要素・属性 |
---|---|
bxsliderConf | bxsliderの表示設定(bxslider.js) |
2. HTMLの編集
config.jsで指定した要素・属性をHTMLに記述します。以下のソースコードではバナーモジュールで画像リストを用意してbxsliderでスライドショーを作っています。
<!-- BEGIN_MODULE Banner id="topImage" -->
<ul class="js-bxslider"><!-- BEGIN banner:loop -->
<li><!-- BEGIN banner#src -->
{src}[raw]<!-- END banner#src --><!-- BEGIN banner#img -->
<a href="{url}" target="{target}"><img src="%{ARCHIVES_DIR}{img}" width="{x}" height="{y}" alt="{alt}" /></a><!-- END banner#img -->
</li><!-- END banner:loop -->
</ul>
<!-- END_MODULE Banner -->
JVNで報告された脆弱性への対応について

a-blog cms で複数の脆弱性が見つかりました。 該当の状況に当てはまる場合は大変お手数ですが以下のご対応をお願いいたします。
JVN識別番号
- JVNVU#90760614
報告された脆弱性は以下になります。
- 特定POSTモジュールのサーバーサイドリクエストフォージェリおよびクロスサイトスクリプティングの脆弱性
- バックアップ機能のパストラバーサルの脆弱性
特定POSTモジュールのSSRFおよびXSS
内容
攻撃者が特定のPOSTモジュールに対して攻撃リクエストを送ることにより、SSRFまたはXSSが発生します。
攻撃条件
- 特に条件なし
影響を受けるバージョン
- a-blog cms Ver. 3.1.43 以下のバージョン (Ver. 3.1.x系)
- a-blog cms Ver. 3.0.47 以下のバージョン (Ver. 3.0.x系)
- a-blog cms Ver. 2.11.75 以下のバージョン (Ver. 2.11.x系)
- a-blog cms Ver. 2.10.63 以下のバージョン (Ver. 2.10.x系)
- a-blog cms Ver. 2.9.52 以下のバージョン(Ver. 2.9.x系)
- a-blog cms Ver. 2.8.85 以下のバージョン(Ver. 2.8.x系)
- a-blog cms Ver. 2.7.x 以下(v2.6, v2.0, v1.7 など全て)のバージョン(フィックスバージョンはありません)
ワークアラウンド(応急処置)
config.server.php
の HOOK_ENABLE
を 1
に設定します。
define('HOOK_ENABLE', 1);
extension/acms/Hook.php
を修正します。
public function beforePostFire($thisModule)
{
$thisModule->Post->delete('protocol'); // この行を追加
}
extension/acms/Hook.php
が存在しない場合は、php/ACMS/User/Hook.php
を修正します。
CMSバージョンアップによる対応
各マイナーバージョン毎にフィックスバージョンがリリースしております。 「影響を受けるバージョン」 よりも新しいフィックスバージョンにアップデートを行なってください。
謝辞
当該脆弱性をご報告いただいた vcth4nh from VCSLab of Viettel Cyber Security (Vu Chi Thanh) 様に感謝申し上げます。
We appreciate the report of this issue by vcth4nh from VCSLab of Viettel Cyber Security (Vu Chi Thanh), which helped improve the security of this product.
バックアップ機能のパストラバーサルの脆弱性
内容
攻撃者が管理者権限でログインして、バックアップ機能に不正なリクエストを送信することで、パストラバーサルが発生します。
攻撃条件
- 攻撃者が 管理者権限でログイン可能なこと(* 不正ログインされる脆弱性はありません)
影響を受けるバージョン
- a-blog cms Ver. 3.1.42 以下のバージョン (Ver.3.1.x系)
- a-blog cms Ver. 3.0.46 以下のバージョン (Ver.3.0.x系)
- a-blog cms Ver. 2.11.x 以下(v2.10, v2.0, v1.7 など全て)のバージョン(フィックスバージョンはありません)
CMSバージョンアップによる対応
各マイナーバージョン毎にフィックスバージョンがリリースしております。 「影響を受けるバージョン」 よりも新しいフィックスバージョンにアップデートを行なってください。
謝辞
当該脆弱性をご報告いただいた haidv35 (Dinh Viet Hai) at Viettel Cyber Security 様に感謝申し上げます。
We appreciate the report of this issue by haidv35 (Dinh Viet Hai) at Viettel Cyber Security, which helped improve the security of this product.
最後に
この度はご迷惑をおかけしてしまい大変申し訳ございません。
お早めにバージョンアップのご検討をお願いいたします。 また、迅速にご報告いただいたユーザーの皆さま、誠にありがとうございました。
今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。
本件に関するお問い合わせ先
本件についてご不明点などありましたら以下のお問い合わせよりご連絡ください。
有限会社アップルップル
メールアドレス:info@a-blogcms.jp
お問い合わせフォーム:https://www.a-blogcms.jp/contact/