← Home

@opensip-tools/core

Core framework for OpenSIP Tools — check definitions, registry, recipes

37
Versions
MIT
License
No
Install Scripts
Verified
Provenance

Supply chain provenance

Status for the latest visible version.

SLSA provenance attestation npm registry signatures No source commit

Maintainers

opensip

Keywords

opensip-toolsstatic-analysiscode-qualitykernelplugin-system

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
typosquat typosquat.levenshtein:cors AI (typosquat): Scoped package @opensip-tools/core; no impersonation intent — 'core' is a generic word, not a typo of 'cors'. ai
semgrep semgrep:etc-passwd-access AI (semgrep): Fires inside a test file using '/etc/passwd' as a literal dependency name string to test plugin discovery; not credential harvesting. ai

Versions (showing 37 of 37)

Version Deps Published
2.8.0 3 / 4
2.7.1 3 / 4
2.7.0 3 / 4
2.6.2 3 / 4
2.6.1 3 / 4
2.6.0 3 / 4
2.5.2 3 / 4
2.5.1 3 / 4
2.4.1 3 / 4
2.4.0 3 / 4
2.3.3 3 / 4
2.3.2 3 / 4
2.3.1 3 / 4
2.3.0 3 / 4
2.2.1 3 / 4
2.1.0 3 / 4
2.0.1 3 / 3
2.0.0 3 / 3
1.3.1 3 / 2
1.3.0 3 / 2
1.2.0 3 / 2
1.0.10 3 / 2
1.0.9 3 / 2
1.0.8 3 / 2
1.0.7 3 / 2
1.0.6 3 / 2
1.0.5 3 / 2
1.0.3 3 / 2
1.0.1 3 / 2
0.6.1 6 / 3
0.6.0 6 / 3
0.5.0 6 / 3
0.4.0 6 / 3
0.3.0 6 / 3
0.2.5 6 / 3
0.2.4 6 / 3
0.1.0 6 / 3

v2.8.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.7.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.7.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.6.2

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.6.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.6.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.5.2

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.5.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.4.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.4.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.3.3

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.3.2

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.3.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.3.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.2.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.1.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.0.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v2.0.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.3.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.3.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.2.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.10

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.9

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.8

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.7

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.6

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.5

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.3

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.0.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.6.1

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.6.0

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.5.0

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.4.0

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.3.0

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.2.5

5 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:228 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 226 | writeFileSync(join(fitDir, 'package.json'), JSON.stringify({ 227 | name: 'plugins-host', > 228 | dependencies: { '/etc/passwd': '*' }, 229 | })) 230 |

HIGH etc-passwd-access: src/plugins/__tests__/discover.test.ts:256 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 254 | 255 | // Set up a target file outside the plugin dir — this stands in for > 256 | // /etc/passwd or any other attacker-readable file. 257 | const outsideTarget = join(testDir, 'evil-target.mjs') 258 | writeFileSync(outsideTarget, 'export const checks = []')

HIGH etc-passwd-access: src/plugins/discover.ts:340 semgrep

Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 338 | * `parent` or located inside it. Used as a security boundary check against 339 | * attacker-influenced paths in plugin discovery: a malicious package.json > 340 | * dependency key (`"../../etc/passwd"`) or a symlink planted in the plugin 341 | * dir would pass `existsSync` / `statSync` but fail this check. 342 | *

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.2.4

2 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v0.1.0

2 findings
HIGH typosquat.levenshtein: Possible typosquat of 'cors' typosquat

Package name '@opensip-tools/core' is 1 edit(s) away from popular package 'cors'.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.