LoginSignup
15
9

More than 3 years have passed since last update.

laravel6のIgnition問題

Last updated at Posted at 2020-07-03

概要

システム保守の関係上、JBNDBのRSSを常にチェックしているが、先日見た事ないような深刻度の脆弱性が出てきた。
Laravel 用の Ignition page における脆弱性
スクリーンショット 2020-07-03 10.13.04.png
きゅ、、9.8!!!??? ( MAX10 )
これはヤバいという事で対応したが、すんなりいかなかった話。

Ignitionとは

GitHub
laravel6から採用されたComposerパッケージのエラーメッセージ表示ツール。
見易くて綺麗。
Laravel6インストール後composer.jsonを見るとデフォルトでrequire-dev内(development環境)に記載されている。
68747470733a2f2f6661636164652e6769746875622e696f2f69676e6974696f6e2f73637265656e73686f742e706e67.png

対応方法(失敗)

ignition 2.0.5未満は影響を受ける、とある。
最新にしてみる。

composer.json
{
...
    "require-dev": {
        "facade/ignition": "^2.0.5",
        "fzaninotto/faker": "^1.4",
        "mockery/mockery": "^1.0",
...

しかし、composer installで以下のようなエラーが、、、

% composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: don't install laravel/framework v6.18.23
    - Conclusion: don't install laravel/framework v6.18.22
...
    - facade/ignition 2.0.5 requires illuminate/support ^7.0|^8.0 -> satisfiable by illuminate/support[7.x-dev, 8.x-dev, v7.0.0, v7.0.1, v7.0.2, v7.0.3, v7.0.4, v7.0.5, v7.0.6, v7.0.7, v7.0.8, v7.1.0, v7.1.1, v7.1.2, v7.1.3, v7.10.0, v7.10.1, v7.10.2, v7.10.3, v7.11.0, v7.12.0, v7.13.0, v7.14.0, v7.14.1, v7.15.0, v7.16.0, v7.16.1, v7.17.0, v7.17.1, v7.17.2, v7.18.0, v7.2.0, v7.2.1, v7.2.2, v7.3.0, v7.4.0, v7.5.0, v7.5.1, v7.5.2, v7.6.0, v7.6.1, v7.6.2, v7.7.0, v7.7.1, v7.8.0, v7.8.1, v7.9.0, v7.9.1, v7.9.2].

えーと、何、、、laravel7以降しかサポートしてない??
現在システム運用中でignition自体development環境でしかビルドされてないのに7にあげるとかないでしょ、、、

対応方法

以下のいずれかが妥当ではないかと思う。

  • Ignitionを捨てる
    見易くてデバッグしやすいかもしれないが、本番では使わないし、必要ならPHP標準のエラー表示で見たらいい。
    composer.jsonから"facade/ignition":,を削除してビルドし直す。
  • Ignitionの代わりにWhoopsを入れる
    composer.jsonの "facade/ignition":, を削除して"filp/whoops": "^2.7",を追記し、ビルドし直す。
    Whoopsとは:
    • Laravel6未満で採用されていたエラー表示ツール。
    • 過去に脆弱性は報告されているものの、今は無し。

Whoopsは多少見た目と使い勝手が悪いかもしれないが、必要十分であると思う。
かと言ってWhoopsすら脆弱性ゼロとは言い切れないので、問題を抱えたくないなら削除してもいいんじゃないかと。

15
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
9