Skip to content

Commit 0815528

Browse files
authored
Merge pull request #9307 from BitGo/fix/osv-scanner-review-comments
ci(root): address review comments on osv-scanner migration
2 parents 4e29aea + 1c04950 commit 0815528

3 files changed

Lines changed: 15 additions & 20 deletions

File tree

.github/workflows/iyarc-prune.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ jobs:
7474
with:
7575
prompt: ${{ steps.agent.outputs.content }}
7676
use_commit_signing: 'true'
77-
branch_prefix: 'iyarc-prune/'
77+
branch_prefix: 'osv-scanner-prune/'
7878
claude_args: --allowed-tools 'Edit,MultiEdit,Write,Read,Glob,Grep,LS,Bash,mcp__github_file_ops__commit_files,mcp__github_file_ops__delete_files'
7979
use_bedrock: 'true'
8080
github_token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/npmjs-release.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,6 @@ jobs:
266266
run: |
267267
yarn install --frozen-lockfile
268268
269-
- name: Install retry
270-
uses: BitGo/install-github-release-binary@v2
271-
with:
272-
targets: EricCrosson/retry@v1.4.8:sha256-d207746ff0eda67c706df25e88c02520f0cf3172279eb8eec8224fb0d3558911
273-
274269
- name: Audit Dependencies
275270
uses: google/osv-scanner-action@9a498708959aeaef5ef730655706c5a1df1edbc2 # v2.3.8
276271
with:

osv-scanner.toml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,55 @@
11
[[IgnoredVulns]]
22
id = "GHSA-8qq5-rm4j-mr97"
3-
reason = "tar extraction CVE, lerna only packs — not exploitable"
3+
reason = "tar extraction CVE (symlink/hardlink); lerna requires tar v6 but fix only in v7.5.3+ — forcing v7.5.3 breaks lerna's packDirectory API; our usage is archive PACKING only, not extraction"
44

55
[[IgnoredVulns]]
66
id = "GHSA-r6q2-hw4h-h46w"
7-
reason = "tar extraction CVE, packing only"
7+
reason = "tar extraction CVE; transitive via lerna and yeoman-generator pinning tar <7.5.4; we only use tar for archive PACKING, not extraction"
88

99
[[IgnoredVulns]]
1010
id = "GHSA-34x7-hfp2-rc4v"
11-
reason = "tar extraction CVE, packing only"
11+
reason = "tar extraction CVE (specially crafted archives); transitive via lerna and yeoman-generator requiring tar <7.5.4; our usage is limited to archive PACKING only"
1212

1313
[[IgnoredVulns]]
1414
id = "GHSA-3ppc-4f35-3m26"
15-
reason = "minimatch ReDoS, dev tooling only with controlled inputs"
15+
reason = "minimatch ReDoS (<10.2.1) via repeated wildcards; transitive via lerna/depcheck/glob/mocha/yeoman-generator; dev-time tooling only with controlled (non-user-supplied) inputs; minimatch 10.x breaks lerna v9 API"
1616

1717
[[IgnoredVulns]]
1818
id = "GHSA-83g3-92jg-28cx"
19-
reason = "tar extraction CVE, packing only"
19+
reason = "tar extraction CVE (specially crafted archives); transitive via lerna and yeoman-generator requiring tar <7.5.4; our usage is limited to archive PACKING only"
2020

2121
[[IgnoredVulns]]
2222
id = "GHSA-7r86-cg39-jmmj"
23-
reason = "minimatch ReDoS, dev tooling only"
23+
reason = "minimatch ReDoS via crafted glob patterns (same class as GHSA-3ppc-4f35-3m26); transitive via lerna/depcheck/nyc/eslint/yeoman-generator/glob/shelljs; dev-time tooling only"
2424

2525
[[IgnoredVulns]]
2626
id = "GHSA-23c5-xmqv-rm74"
27-
reason = "minimatch ReDoS, dev tooling only"
27+
reason = "minimatch ReDoS via crafted glob patterns (same class as GHSA-3ppc-4f35-3m26); transitive via lerna/depcheck/nyc/eslint/yeoman-generator/glob/shelljs; dev-time tooling with controlled inputs only"
2828

2929
[[IgnoredVulns]]
3030
id = "GHSA-qffp-2rhf-9h96"
31-
reason = "tar hardlink path traversal, packing only"
31+
reason = "tar hardlink path traversal (crafted archives); transitive via lerna/yeoman-generator requiring tar <7.5.7; our usage is archive PACKING only; forcing tar v7.5.7+ breaks lerna (same constraint as GHSA-8qq5-rm4j-mr97)"
3232

3333
[[IgnoredVulns]]
3434
id = "GHSA-9ppj-qmqm-q256"
35-
reason = "tar extraction, packing only"
35+
reason = "tar extraction CVE (same risk profile as other tar exclusions); we only use tar for packing; security exception approved"
3636

3737
[[IgnoredVulns]]
3838
id = "GHSA-2w8x-224x-785m"
39-
reason = "sjcl.ecc invalid-curve attack; macaroon uses HMAC/hash only; resolved via @bitgo/sjcl fork"
39+
reason = "sjcl.ecc invalid-curve attack (ECDH); transitive via @bitgo/abstract-lightning > macaroon > sjcl; macaroon uses only HMAC/hash — no ECC; @bitgo/sjcl fork excludes sjcl.ecc entirely; resolved via root resolutions sjcl->@bitgo/sjcl@1.0.1; no upstream fix (first_patched_version: null)"
4040

4141
[[IgnoredVulns]]
4242
id = "GHSA-96hv-2xvq-fx4p"
43-
reason = "ws server-side DoS; used only as WebSocket client"
43+
reason = "ws server-side memory exhaustion DoS; transitive via @cosmjs/socket, @ethersproject/providers, @polkadot/rpc-provider, jayson, rpc-websockets, avalanche — all requiring ws <8.21.0; we use ws exclusively as a WebSocket CLIENT for blockchain RPC, never as a server"
4444

4545
[[IgnoredVulns]]
4646
id = "GHSA-hmw2-7cc7-3qxx"
47-
reason = "form-data CRLF injection; all field names are code-controlled constants"
47+
reason = "form-data CRLF injection via unescaped multipart field names; transitive via superagent and @aptos-labs/ts-sdk; all form-data field names and filenames in our code are code-controlled constants, not derived from user input"
4848

4949
[[IgnoredVulns]]
5050
id = "GHSA-wcpc-wj8m-hjx6"
51-
reason = "protobufjs DoS via parseAny recursion; input from trusted RPC only"
51+
reason = "protobufjs DoS via unbounded Any expansion (parseAny recursion); transitive via @cosmjs and @hashgraph/sdk requiring protobufjs <=7.5.x; input comes from trusted blockchain RPC responses only, not arbitrary user data"
5252

5353
[[IgnoredVulns]]
5454
id = "GHSA-7c78-jf6q-g5cm"
55-
reason = "tmp path traversal via type confusion; all args are hardcoded strings"
55+
reason = "tmp path traversal via type-confusion in _assertPath (non-string args); transitive via cypress/karma/lerna/nx (dev-time only, never in production); all prefix/postfix/template args are hard-coded string constants — type-confusion vector does not apply"

0 commit comments

Comments
 (0)