EC-CUBEのバージョンは、管理画面から見る方法とサーバー上のファイルから見る方法があります。管理画面に入れるなら数クリックで済みますが、引き継ぎ調査や脆弱性の確認では、ログイン情報が手元にない状態で調べることも少なくありません。両方の確認方法と、まぎらわしい「Symfonyのバージョン」との区別を整理します。
管理画面から確認する(4系・3系)
管理画面にログインできる場合はこれが最短です。
設定 > システム情報設定 > システム情報を開くと、バージョンが表示されます。

この画面にはPHPのバージョンやデータベースの種類も並んでいます。バージョンアップの可否を判断するときは、あわせて控えておくと後の確認が減ります。
管理画面から確認する(2系)
2系は場所が違います。ログインした直後のホーム画面にバージョンが記載されています。

ファイルから確認する(管理画面に入れない場合)
サーバーのファイルは見られるが管理画面のログイン情報がない、という状況でも確認できます。4系ならバージョンはソースコード内に定数として書かれています。
src/Eccube/Common/Constant.php をテキストエディタで開くか、SSHが使えるなら次のコマンドで該当行だけ取り出せます。
grep VERSION src/Eccube/Common/Constant.php
出力はこうなります。
public const VERSION = '4.3.1-p1';
これがEC-CUBEのバージョンです。末尾の-p1はパッチ適用済みであることを示します。セキュリティ修正が当たっているかを見るときは、この部分まで含めて確認してください。
なおcomposer.jsonにはEC-CUBE本体のバージョンが書かれていません。依存パッケージの一覧なので、ここを見ても分かりません。
bin/console –version はSymfonyのバージョンを返す
まぎらわしいのがこのコマンドです。EC-CUBE 4系はSymfonyベースなのでbin/consoleが使えますが、バージョンを聞くと返ってくるのはSymfony側の数字です。
$ php bin/console --version
Symfony 6.4.43 (env: prod, debug: false)
6.4.43はSymfonyのバージョンであり、EC-CUBEのバージョンではありません。この出力を見て「6系だ」と勘違いすると、対応バージョンの判断を誤ります。EC-CUBE本体を知りたいときは、前述のConstant.phpを見てください。
Symfonyのバージョンが必要な場面もあります。ライブラリの互換性を調べるときなどです。その用途については自分のEC-CUBEが採用しているSymfonyバージョンの確認方法は?にまとめています。
サイトの外部からバージョンは分からない
「URLだけ分かっている他社のサイトのバージョンを知りたい」という場合、EC-CUBEは標準ではバージョンを出力しません。
実際にHTMLを取得して確認しても、WordPressのgeneratorメタタグのような記述は含まれていません。バージョンが分かると既知の脆弱性を狙われるため、これは望ましい挙動です。
裏を返すと、自社サイトのバージョンを調べるにはサーバーか管理画面のどちらかにアクセスする必要があります。どちらの手段も無い場合は、バージョン以前に管理体制の問題として整理したほうが早く進みます。
確認したバージョンをどう判断するか
数字が分かったら、それが保守されている系列かどうかを確認します。EC-CUBEはバージョンごとにサポート期間が定められていて、期間を過ぎるとセキュリティ修正が提供されません。
各バージョンのサポート状況は、EC-CUBE公式サイトのライフサイクルポリシーで公開されています。自分のバージョンが対象外になっていれば、脆弱性が公表されても修正版は出ません。バージョンアップを検討する段階です。
古い系列で稼働しているサイトほど、この確認を先延ばしにしがちです。バージョンが分かった時点でサポート状況まで調べるようにすると、判断が遅れずに済みます。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。