- SERVICE
Webサイト・CMSの保守管理・運用
- WORKS
- ABOUT US
- NEWS & COLUMN
- RECRUIT
皆さんこんにちは。
taneCREATIVEの「ちほうタイガー」です。
この記事は、CakePHP(ケイクピーエイチピー)のバージョン情報とサポート期限についてまとめた記事で、2024年12月28日に執筆しています。
CakePHPはCake Software Foundation (CSF)とコミュニティによって開発・サポートが継続されている、オープンソースのPHPによるWebアプリケーションフレームワークです。
PHP自体も人気のプログラム言語ですが、CakePHPはそのフレームワークとして非常に高い評価を得ています(Web制作の現場にいる感覚としてもそうですが、2024年12月に行われたPeerSpotによるPHPフレームワークの市場動向調査でも評価2位となっています)。
フレームワークにも脆弱性が見つかります。
そのため、安全で円滑なWebサイトの運用のためには、CakePHPについても最新バージョンへのアップデートが欠かせません。
この記事では、企業のWeb担当者の皆様に向けて、CakePHPのバージョン情報とサポート期限についてまとめた上で、CakePHPの脆弱性についてもご紹介したいと思います。
少しでも皆様のお役に立てる記事にできればと思います。どうぞよろしくお願い致します。
CakePHP(ケイクピーエイチピー)のバージョンには、通常版とLTS版(Long Term Support)の2種類があります。
2024年12月28日現在、CakePHPの最新バージョンは5系統であり、公式がセキュリティサポートをしているバージョンは5系統と4系統のみです。
CakePHPのバージョンが3系統ないし4.0.9、4.1.3、4.2.11、4.3.10、4.4.9以下の場合には、既知の脆弱性が存在する可能性があります。
バグフィックスとは、セキュリティパッチの提供はもちろんのこと、軽微な不具合の修正も提供される期間です。
CakePHPのバグフィックスには、新機能の追加やAPIの大幅な変更は含まれません。
セキュリティフィックスとは、セキュリティパッチが提供される期間のことを指します。
バグフィックス期間が終了後、セキュリティフィックス期間終了までの間は、基本的に重大な脆弱性に関するパッチのみが提供されます。
CakePHP 1系統では、サポート期間とEOLポリシーは明確に定義されていませんでしたが、2015年11月1日に公式サポートは終了しています。
CakePHP 2系統については、バグフィックスがCakePHP 4.0.0のリリースから12ヵ月後(2020年12月15日)、セキュリティフィックスがCakePHP 4.0.0のリリースから18ヵ月後(2021年6月15日)とされ、既に公式サポートは終了しています。
CakePHP 3系統については、バグフィックスがCakePHP 4.0.0のリリースから24ヵ月後(2021年12月15日)、セキュリティフィックスがCakePHP 4.0.0のリリースから36ヵ月後(2022年12月15日)とされ、こちらも既に公式サポートは終了しています。
CakePHP 4系統からは、バグフィックスは次のメジャーリリースから24ヶ月間、セキュリティフィックスは36ヶ月間というルールになった模様です。
2024年12月28日現在における、CakePHP各バージョンのサポート期限、最新バージョンは次の通りです。
CakePHPの バージョン |
リリース日 | バグフィックス期限 | セキュリティフィックス期限 | 最新バージョン |
5 | 2023年9月9日 | 未定 | 未定 | 5.1.4 |
4 | 2019年12月15日 | 2025年9月10日 | 2026年12月10日 | 4.5.8 |
3 | 2015年3月22日 | 2021年12月15日 | 2022年12月15日 | 3.10.5 |
2 | 2011年10月16日 | 2020年12月15日 | 2021年6月15日 | 2.10.24 |
1 | 2010年4月25日 | 2015年11月1日 | 2015年11月1日 | 1.3.21 |
※グレーのバージョンはセキュリティサポートが終了しています。
※詳細については、CakePHP の GitHub Wiki及び公式サイトのリリースを参照してください。
CakePHP 2系統から5系統に関する脆弱性情報で、当社が把握しているものは次の通りです(1系統は割愛させていただきます)。
なお、CakePHPのアップデート管理は、マイナーバージョンごとに行われています(例えば、CakePHP 4.3系統、4.4系統、4.5系統はそれぞれアップデートバージョンがあがっていきます)。
脆弱性情報 | 深刻度 | 影響を受けるバージョン | 修正されたバージョン |
CVSS v3 9.8 (緊急) |
CakePHP 4.4.0から4.4.9 CakePHP 4.3.0から4.3.10 CakePHP 4.2.0から4.2.11 |
CakePHP 4.4.10 CakePHP 4.3.11 CakePHP 4.2.12 |
|
CVSS v3 8.8 (重要) |
CakePHP 4.1.0から4.1.3 CakePHP 4.0.0から4.0.9 |
CakePHP 4.1.4以降には影響なし。 CakePHP 4.0.10 |
|
CVSS v3 4.3 (警告) |
CakePHP 4.0.5までのバージョン | CakePHP 4.0.6 ※2系統、3系統での修正情報は見つけられていません |
|
CVSS v3 7.5 (重要) |
CakePHP 3.7.0から3.7.6 CakePHP 3.6.0から3.6.14 CakePHP 3.5.0から3.5.17 |
CakePHP 3.7.7 CakePHP 3.6.15 CakePHP 3.5.18 |
|
CVSS v3 7.5 (重要) |
CakePHP 3.2.0から3.2.4 CakePHP 3.1.0から3.1.11 CakePHP 3.0.0から3.0.16 CakePHP 2.8.0から2.8.1 CakePHP 2.7.0から2.7.10 CakePHP 2.6.0から2.6.12 |
CakePHP 3.2.5 CakePHP 3.1.12 CakePHP 3.0.17 CakePHP 2.8.2 CakePHP 2.7.11 CakePHP 2.6.13 |
|
CVSS v3 8.8 (重要) |
CakePHP 2.0.0から3.1.4 | CakePHP 3.1.5 | |
CVSS v3 7.5 (重要) |
CakePHP 2.2.0 CakePHP 2.1.0から2.1.4 |
CakePHP 2.2.1 CakePHP 2.1.5 |
※脆弱性情報については、情報セキュリティにおける脆弱性情報に付けられている番号であるCommon Vulnerabilities and Exposures(本記事では「CVE」とします)の順序に従って掲載しています。
※深刻度については、共通脆弱性評価システムCVSS v3に基づいています。また、本記事では、CVSS v3にて緊急(9.0~10.0)、重要(7.0~8.9)、警告(4.0~6.9)に区分されるもののみを掲載しています。注意(0.1~3.9)の情報については、JVN iPediaなどでご確認ください。
※深刻度の数値はJapan Vulnerability Notes(本記事では「JVN」とします)及び、JVNが評価を合わせている米国国立標準技術研究所(NIST)が運営する脆弱性データベースであるNational Vulnerability Database(以下「NVD」)に準拠しています。ただし、NVDでスコアリングがされていない場合には、GitHub, Inc.などのスコアを記載しています。
※原則としてJVNのページを正としていますが、JVNに掲載されていない情報などについてはNVDのサイトを参照しています。
※CakePHP 3.10.3及び3.10.4ではフォームトークンの再利用脆弱性について修正されていますが、こちらとCVE-2022-30774との関連性については明確な情報が見つからなかったため、掲載していません。
※CVE-2019-11458の影響範囲については、CVEのサイトでは「CakePHP 3.7.6」とのみ記載されていますが、CakePHP公式サイトのリリースの記載からは、複数のマイナーバージョンに影響を与えていると読めることから、公式サイトの記載を正としています。
※CVE-2016-4793の影響範囲については、CVEのサイトでは「CakePHP 3.2.4 and earlier」とのみ記載されていますが、CakePHP公式サイトのリリース及びlegalhackers.comの該当情報の記載からは、複数のマイナーバージョンに影響を与えていると読めることから、公式サイトの記載を正としています。
※本記事における脆弱性情報は、当社が把握しているものだけであり、全ての脆弱性情報を網羅できているわけではありません。
※本記事における脆弱性情報をご利用になる場合には、必ずCVE、JVN、NVDなどの情報を確認されたうえで、自己責任でご利用ください。
CakePHPは、PHPで開発されているため、PHPの脆弱性にも影響を受けます。
そこで、CakePHPの各バージョンと対応するPHPバージョン、その脆弱性情報へのリンクを掲載しておきます。
CakePHPの バージョン |
対応するPHPバージョン | PHPの脆弱性情報一覧へのリンク |
5系統 | PHP 8.1 - 8.4 |
PHP8.3の脆弱性情報一覧 |
4系統 | PHP 7.2 - 8.3 | |
3系統 | PHP 5.6 - 7.4 | |
2系統 | PHP 5.4 - 7.4 |
※実際には、マイナーバージョンごとに対応するPHPのバージョンが変わります(例:PHP8.0はCakePHP 4.2以上から対応、PHP8.2はCakePHP 4.4以上から対応など)。
※グレーのバージョンはPHPのセキュリティサポートが終了しています。
CakePHPはPHPのフレームワークとして評価2位とされており、大手企業であってもCakePHPを利用しているケースが多いのが現状です。
しかしながら、自社内でバージョンアップを行うにも属人化が発生してリソースが足りなくなったり、管理するWebサイト・Webシステムの数が増え、あるいはWebサイト等の規模が大きくなるにつれて社内での対応が困難になることがあります。
taneCREATIVE社は、「リモートによるWebアプリケーションのセキュリティ対策をパッケージ化、首都圏大手企業に提供」している点が評価され、2021年にJ-Startup NIIGATAに選定されている企業でありCakePHP、PHPに対応可能です。
※「J-Startup NIIGATA」とは、経済産業省が2018年に開始したJ-Startupプログラムの地域版として、新潟発のロールモデルとなるスタートアップ企業群を明らかにし、官民連携により集中的に支援する仕組みを構築することで、新潟県におけるスタートアップ・エコシステムを強化する取組です。
CakePHPでの開発やアップデートを含む保守管理に関しては、こちらのお問合せよりお気軽にご相談ください。
taneCREATIVEに所属する謎のトラ。
2024年12月28日執筆