我在我的專案上運行 snyk 測驗命令來識別第三方庫的漏洞,并在 [email protected] ->@svgr/webpack": "^5.5.0" 中遇到了以下漏洞
- 正則運算式拒絕服務 (ReDoS) - [email protected]
- 正則運算式拒絕服務 (ReDoS) - [email protected]
為了緩解這種情況,我在我的 package.json 中添加了一個依賴項覆寫(或者在我的情況下是依賴項決議,因為專案使用的是紗線),如下所示,以用不易受攻擊的版本替換嵌套的依賴項:
"resolutions": {
"loader-utils": "^2.0.3",
"nth-check": "2.0.1",
"@svgr/webpack": "^6.2.1"
},
并安裝了紗線。我在專案包中確認通過這些更改,安裝了最新版本的 loader-utils 和 nth-check。我還檢查了 VS Code 上的 Snyk Extension,它似乎解決了漏洞問題。
但是當我運行snyk testgithub 操作管道時,如下所示:
- name: Run Snyk test scan
uses: snyk/actions/node@master
with:
command: test
args: --severity-threshold=high --fail-on=all
它仍然報告 nth-check 和 loader-utils 上的漏洞。我的假設是,這是因為 Snyk github actions 在運行代碼分析之前確實安裝了您的依賴項。相反,它會檢查 package.json 檔案并逐層打開依賴項,導致它認為我仍然有易受攻擊的依賴項作為 react-scripts 包中的嵌套依賴項,而實際上它被resolutionspackage.json 中的部分覆寫了。
有沒有辦法繞過這個或強制 snyk 考慮嵌套依賴覆寫?
uj5u.com熱心網友回復:
經過一些研究,我發現 Snyk 本身沒有這樣的問題。問題出在我們的 snyk 配置中。掃描配置為在我們主分支的 package.json 上運行,而修復在一個單獨的分支上。一旦我們更新了 snyk 掃描以在正確的 package.json 上運行,它確實將問題確定為已解決。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/535390.html
