はじめに
以前Laravel環境お引越し記事にて色々まとめていましたが、自宅内のサーバのメンテでプロジェクトのお引越しをしていた所、今まで見たことないLaravel起動時のエラーが出たのでそのまとめです。
環境
環境は依然に引き続きLaravel10を使用していきます。
バージョン情報
コマンド
$ sail php artisan --version
Laravel Framework 10.48.16
エラー内容
以前投稿した記事の中で、「sail npm install」を実行していましたが、今回そのコマンドを実行した所、以下のエラーが発生しました。
コマンド
test01@vm-omsrv01:/work/gitlab/test-cis-v10$ sail npm install
up to date, audited 147 packages in 1s
36 packages are looking for funding
run `npm fund` for details
4 vulnerabilities (3 moderate, 1 high)
To address all issues, run:
npm audit fix
Run `npm audit` for details.
なんとなく文面から察していましたが、調べてみるとどうやら脆弱性があるからアップデートしろ的な内容のようです。
「npm audit」コマンドを使用すると詳細が見れるようですので実行してみます。
コマンド
test01@vm-omsrv01:/work/gitlab/test-cis-v10$ sail npm audit
# npm audit report
axios 1.3.2 - 1.7.3
Severity: high
Server-Side Request Forgery in axios - https://github.com/advisories/GHSA-8hc4-vh64-cxmj
fix available via `npm audit fix`
node_modules/axios
micromatch *
Severity: moderate
Regular Expression Denial of Service (ReDoS) in micromatch - https://github.com/advisories/GHSA-952p-6rrq-rcjv
fix available via `npm audit fix`
node_modules/tailwindcss/node_modules/micromatch
fast-glob *
Depends on vulnerable versions of micromatch
node_modules/tailwindcss/node_modules/fast-glob
tailwindcss <=0.0.0-oxide-insiders.ff2c25f || 2.1.0-canary.1 - 3.4.10
Depends on vulnerable versions of fast-glob
Depends on vulnerable versions of micromatch
node_modules/tailwindcss
4 vulnerabilities (3 moderate, 1 high)
To address all issues, run:
npm audit fix
DeepLで翻訳したりChatGPTに聞きながら要約すると以下のような感じでしょうか。
1. axios (重大性:高)
- 脆弱性の種類:サーバーサイドリクエストフォージェリ (SSRF)
- 影響を受けるバージョン:1.3.2 - 1.7.3
-
修正方法:
npm audit fix
コマンドで修正可能です。 - 詳細:GHSA-8hc4-vh64-cxmj
2. micromatch (重大性:低)
- 脆弱性の種類:正規表現のサービス拒否攻撃 (ReDoS)
- 影響を受けるバージョン:micromatch の全バージョンが影響を受けます。
-
依存関係:
tailwindcss
パッケージがfast-glob
に依存しており、さらにfast-glob
がmicromatch
に依存しています。 -
修正方法:
npm audit fix
コマンドで修正可能です。 - 詳細:GHSA-952p-6rrq-rcjv
脆弱性対応
どうやらいずれも「npm audit fix」コマンドにて修正が可能なようです。
初めての実行ですが早速やってみます。
コマンド
test01@vm-omsrv01:/work/gitlab/test-cis-v10$ sail npm audit fix
added 18 packages, removed 19 packages, changed 2 packages, and audited 146 packages in 4s
36 packages are looking for funding
run `npm fund` for details
# npm audit report
micromatch *
Severity: moderate
Regular Expression Denial of Service (ReDoS) in micromatch - https://github.com/advisories/GHSA-952p-6rrq-rcjv
fix available via `npm audit fix`
node_modules/micromatch
fast-glob *
Depends on vulnerable versions of micromatch
node_modules/fast-glob
tailwindcss <=0.0.0-oxide-insiders.ff2c25f || 2.1.0-canary.1 - 3.4.10
Depends on vulnerable versions of fast-glob
Depends on vulnerable versions of micromatch
node_modules/tailwindcss
3 moderate severity vulnerabilities
To address all issues, run:
npm audit fix
「axios」についてはパッチ適用されたようですが、「micromatch」に関してはバージョンの依存関係もあり、ややこしそうです。 元々このシステムは外部公開せずに自宅のネットワークのみで完結しているので、重要度が低の脆弱性は一旦無視しようかと思います。
脆弱性を無視してインストール
調べてみた感じ以下の無視可能なオプションがあるようです。
- no-audit:脆弱性を一律無視する
コマンド
sail npm install --no-audit
コマンド
test01@vm-omsrv01:/work/gitlab/test-cis-v10$ sail npm install --no-audit
added 146 packages in 3s
36 packages are looking for funding
run `npm fund` for details
test01@vm-omsrv01:/work/gitlab/test-cis-v10$ sail npm run build
> build
> vite build
vite v5.3.3 building for production...
✓ 54 modules transformed.
public/build/manifest.json 0.27 kB x gzip: 0.15 kB
public/build/assets/app-DrEXVF1d.css 35.79 kB x gzip: 6.69 kB
public/build/assets/app-Cs0QkU1O.js 78.50 kB x gzip: 29.14 kB
✓ built in 1.46s
buildも無事完了し、Webシステムにアクセスできました!
最後に
久しぶりの記事になりましたが、Esxiやk8sを自宅で構築したりしたのでそちらも追々記事にします!
読んでいただきありがとうございました!