@aws-amplify/cli-internal
Amplify CLI
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| provenance | no-provenance | AI (provenance): Established AWS Amplify monorepo package; lack of Sigstore provenance is common and not a risk signal here. | ai | |
| install-scripts | install-script:postinstall | AI (install-scripts): Runs local node scripts/post-install.js; consistent with CLI setup across all versions of this package. | ai | |
| semgrep | semgrep:credential-dir-access | AI (semgrep): Sample shows error message string matching on credential paths, not credential harvesting; stable CLI behavior. | ai | |
| semgrep | semgrep:dynamic-require | AI (semgrep): Plugin loader pattern for Amplify provider plugins; documented and stable across versions. | ai | |
| semgrep | semgrep:child-process-import | AI (semgrep): CLI tool legitimately spawns subprocesses; stable pattern across all versions. | ai |
Versions (showing 4 of 4)
| Version | Deps | Published |
|---|---|---|
| 14.4.0 | 88 / 21 | |
| 14.2.3 | 70 / 19 | |
| 14.2.0 | 70 / 19 | |
| 14.0.2 | 69 / 19 |
v14.4.0
4 findingsScript: node scripts/post-install.js
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/b30991213c07cbcc3b19b5386b51174ccc6d4237/lib/amplify-exception-handler.js#L139 137 | path = '~/.amplify'; 138 | } > 139 | else if (err.message.includes('/.aws/amplify/')) { 140 | path = '~/.aws/amplify'; 141 | }
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/b30991213c07cbcc3b19b5386b51174ccc6d4237/lib/amplify-exception-handler.js#L140 138 | } 139 | else if (err.message.includes('/.aws/amplify/')) { > 140 | path = '~/.aws/amplify'; 141 | } 142 | else if (err.message.includes('/amplify/')) {
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v14.2.3
4 findingsScript: node scripts/post-install.js
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/f7aa51f9ab70a655991dbcfafdce678ad8194af1/lib/amplify-exception-handler.js#L139 137 | path = '~/.amplify'; 138 | } > 139 | else if (err.message.includes('/.aws/amplify/')) { 140 | path = '~/.aws/amplify'; 141 | }
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/f7aa51f9ab70a655991dbcfafdce678ad8194af1/lib/amplify-exception-handler.js#L140 138 | } 139 | else if (err.message.includes('/.aws/amplify/')) { > 140 | path = '~/.aws/amplify'; 141 | } 142 | else if (err.message.includes('/amplify/')) {
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v14.2.0
4 findingsScript: node scripts/post-install.js
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/63ffdad2481937029eff028390fe0647915a9827/lib/amplify-exception-handler.js#L139 137 | path = '~/.amplify'; 138 | } > 139 | else if (err.message.includes('/.aws/amplify/')) { 140 | path = '~/.aws/amplify'; 141 | }
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/63ffdad2481937029eff028390fe0647915a9827/lib/amplify-exception-handler.js#L140 138 | } 139 | else if (err.message.includes('/.aws/amplify/')) { > 140 | path = '~/.aws/amplify'; 141 | } 142 | else if (err.message.includes('/amplify/')) {
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v14.0.2
4 findingsScript: node scripts/post-install.js
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/287dda43e871eb48aa63cecdb92dbc7fc8bb793c/lib/amplify-exception-handler.js#L139 137 | path = '~/.amplify'; 138 | } > 139 | else if (err.message.includes('/.aws/amplify/')) { 140 | path = '~/.aws/amplify'; 141 | }
Accessing credential directories suggests credential harvesting Source: https://github.com/aws-amplify/amplify-cli/blob/287dda43e871eb48aa63cecdb92dbc7fc8bb793c/lib/amplify-exception-handler.js#L140 138 | } 139 | else if (err.message.includes('/.aws/amplify/')) { > 140 | path = '~/.aws/amplify'; 141 | } 142 | else if (err.message.includes('/amplify/')) {
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.