[FuelPHP]リリース情報メモ

WEB

この記事について

この記事ではFuelPHPのリリース情報を私的なメモとして記載します。

原文は公式blogを参照してください。

翻訳や要約、参考情報の追記等に関しては正確な情報となるよう注意していますが、誤り等ありましたらご指摘いただけますと幸いです。

2019/06/27 - Fuel releases 1.8.2

要旨

  • 2019年6月27日 FuelPHP 1.8.2をリリース。
  • 変更内容はセキュリティ問題(SEC-CORE-009: アーカイブファイル展開処理の「Slip-Zip」攻撃に対する脆弱性)への対応等。
  • 上記セキュリティ問題が深刻であるため、FuelPHP 1.8以降を使用している場合には1.8.2への更新を強く推奨する。
  • コードベースはPHP 7.3との互換性を検証している。
  • セキュリティ情報や後方互換性、変更点等については更新履歴を参照されたい。

参考

FuelPHP 1,7以前の「Slip-Zip」脆弱性について

Security AdvisoriesによればFuelPHP 1.0以降の全てのバージョンがSEC-CORE-009の対象です。V1.7以前のバージョンを使用している場合には、この変更(V1.8.2の該当箇所 - GitHub)を参考に各自修正の必要があるでしょう。

「Slip-Zip」脆弱性について

JPCERT CCはSnykセキュリティチームの情報を引用する形で「ファイル名に特定の文字列を含んだファイル (../../ファイル名) をアーカイブファイルにいれて処理させることで、Web アプリケーションの権限で特定の場所にファイルを置くことができる」と記載しています。

アーカイブファイルの展開処理における脆弱性「Zip Slip」について

Zipアーカイブ内のファイル名を細工することで任意のファイルをサーバー内に「滑り込ませる(slip)」ことが可能、という意味で「Slip-Zip」と名付けられたのでしょうか。

Snykセキュリティチームによるホワイトペーパーは以下に掲載されています。

Snyk Vulnerability Database | Snyk
The most comprehensive, accurate, and timely database for open source vulnerabilities.

原文の英語表現

Codebase

個人的には馴染みのない語でした。Wikipediaによると

In software development, a codebase (or code base) is a collection of source code used to build a particular software system, application, or software component.
https://en.wikipedia.org/wiki/Codebase

「ソフトウェア開発において、ソフトウェア等を構成するためのソースコードの集合である」

とあるので、日本語(?)では「ソースコード」という語が該当するように思います。「要旨」では「コードベース」としました。

その他の単語等

overdue

(名)延期

latest incarnation of XXX

「最新版のXXX」。latestは「最新」、incarnationは「姿形」の意味があります。

https://www.linguee.jp/%E8%8B%B1%E8%AA%9E-%E6%97%A5%E6%9C%AC%E8%AA%9E/%E7%BF%BB%E8%A8%B3/latest+incarnation.html
straight away

直ちに。

2018/04/18 - Fuel releases 1.8.1

要旨

  • 2018年4月18日 FuelPHP 1.8.1をリリース。
  • 変更内容はセキュリティ問題(SEC-CORE-008:Cryptクラスによる暗号化の脆弱性)への対応等。
  • 上記セキュリティ問題が深刻であるため、FuelPHP 1.8以降を使用している場合には8.1への更新を強く推奨する。
  • コードベースはPHP 7.1との互換性を検証している。

参考

Cryptクラスによる暗号化の脆弱性について

Security Advisoriesによると、Cryptクラスの暗号は十分な知識とプログラム、GPUの処理能力があれば数分程度で突破される内容とのこと。

FuelPHP 1.0以降の全てのバージョンがSEC-CORE-008の対象です。V1.7以前のバージョンを使用している場合には、この変更(V1.8.1の該当箇所 - GitHub)を参考に各自修正の必要があるでしょう。

上記修正は実行環境がPHP7.2以上であることが前提になっています。7.2未満の場合にはcomposerより"paragonie/sodium-compat"のインストールが必要です。

原文の英語表現

compromise

[名]危殆化、[動]危険にさらす

動詞のcompromiseには「妥協する」のほか「(名声等を)損なう」、「(安全性などを)危険にさらす」という意味があります。

※下記リンクの「研究社 英和コンピューター用語辞典」の項目を参照

英語「compromise」の意味・使い方・読み方 | Weblio英和辞書
compromise【名】妥協,和解,歩み寄り,折衷(せつちゆう)案,折衷物 by compromise:妥協によって. - 研究社 新英和中辞典...【発音】kάmprəmὰɪz, kˈɔmprəmὰɪz【変化】compromising(...

情報処理の文脈では、セキュリティが危うくなったという意味で名詞のcompromiseを「危殆化」と訳すことがあります。

「compromise」の意味や使い方 わかりやすく解説 Weblio辞書
「compromise」とは、和解・妥協のことを意味する表現である。Weblio国語辞典では「compromise」の意味や使い方、用例、類似表現などを解説しています。
404 Not Found(お探しのページ・ファイルが見つかりませんでした。) | IPA 独立行政法人 情報処理推進機構
情報処理推進機構(IPA)の「404 Not Found(お探しのページ・ファイルが見つかりませんでした。)」に関する情報です。

「危殆化」には「当初安全であったものが技術の進歩等により安全でなくなった」というニュアンスがありますから「脆弱性(安全でない要素が存在する)」とは意味合いが異なりますが、FuelPHP V1.8.0リリース時点のCryptクラスに脆弱性が存在することには違いありませんので、記事中ではよりわかりやすい「脆弱性」を使用しました。

更新履歴

  • 2019/09/15 初版作成
  • 2019/09/22 V1.8.1のリリースについて記載を追加

コメント