← Back to scan
File as GitHub Issue repo: kptdev/kpt

Push this scan report to kptdev/kpt

Click the green button below to open GitHub’s new-issue form, pre-filled with the report title, summary table, top findings, and an embedded score-card image. No authentication needed — you review on GitHub before submitting. Repobility is credited as the scanner.

Embedded score card image

This image will render at the top of the issue body. Hosted on Repobility, refreshes automatically after re-scans.

Repobility score card

Issue title

Server-Side Request Forgery (SSRF) — outbound HTTP from user input

Curate findings to include

Pick exactly which findings appear in the issue body. By default the top 5 are included. Uncheck noise, check what matters.

Top 5 (default)
Severity Rule Title File:line
HIGH SEC032 [SEC032] Unrestricted File Upload — no extension/MIME validation: File upload accepts the… pkg/fn/runtime/wasm.go:159
HIGH SEC093 [SEC093] Go: exec.Command with non-literal: exec.Command(<var>) — variable command name a… pkg/fn/runtime/exec.go:57
HIGH SEC093 [SEC093] Go: exec.Command with non-literal: exec.Command(<var>) — variable command name a… pkg/fn/runtime/container_utils.go:53
HIGH SEC029 [SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT… release/formula/main.go:59
HIGH SEC029 [SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT… pkg/api/kptfile/v1/validation.go:84
HIGH MINED016 [MINED016] Go Error Ignored: _, err := fn() with err not checked. Go anti-pattern. pkg/api/kptfile/v1/validation.go:235
HIGH MINED016 [MINED016] Go Error Ignored: _, err := fn() with err not checked. Go anti-pattern. internal/testutil/setup_manager.go:119
HIGH MINED016 [MINED016] Go Error Ignored: _, err := fn() with err not checked. Go anti-pattern. commands/pkg/get/cmdget.go:85
HIGH MINED004 [MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums). commands/live/init/cmdliveinit.go:19
HIGH MINED115 Action `slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.ym… .github/workflows/release.yml:83
HIGH MINED115 Action `goreleaser/goreleaser-action` pinned to mutable ref `@v6` .github/workflows/release.yml:59
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/release.yml:36
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/release.yml:31
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/verifyContent.yml:38
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/verifyContent.yml:34
HIGH MINED115 Action `engineerd/setup-kind` pinned to mutable ref `@v0.6.2` .github/workflows/e2eEnvironment.yml:50
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/e2eEnvironment.yml:43
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/e2eEnvironment.yml:39
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/go.yml:79
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/go.yml:75
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/go.yml:57
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/go.yml:53
HIGH MINED115 Action `engineerd/setup-kind` pinned to mutable ref `@v0.6.2` .github/workflows/live-e2e.yml:50
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/live-e2e.yml:46
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/live-e2e.yml:42
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/live-e2e.yml:38
HIGH MINED115 Action `actions/setup-go` pinned to mutable ref `@v6` .github/workflows/verifyDocumentation.y…:35
HIGH MINED115 Action `actions/checkout` pinned to mutable ref `@v5` .github/workflows/verifyDocumentation.y…:32
HIGH MINED118 Dockerfile FROM `alpine:3.18` not pinned by digest release/images/Dockerfile:14
HIGH GO-2026-5039 stdlib: GO-2026-5039 healthcheck/go.mod
HIGH GO-2026-5038 stdlib: GO-2026-5038 healthcheck/go.mod
HIGH GO-2026-5037 stdlib: GO-2026-5037 healthcheck/go.mod
HIGH GO-2026-5030 golang.org/x/net: GO-2026-5030 healthcheck/go.mod
HIGH GO-2026-5029 golang.org/x/net: GO-2026-5029 healthcheck/go.mod
HIGH GO-2026-5028 golang.org/x/net: GO-2026-5028 healthcheck/go.mod
HIGH GO-2026-5027 golang.org/x/net: GO-2026-5027 healthcheck/go.mod
HIGH GO-2026-5026 golang.org/x/net: GO-2026-5026 healthcheck/go.mod
HIGH GO-2026-5025 golang.org/x/net: GO-2026-5025 healthcheck/go.mod
HIGH GO-2026-5039 stdlib: GO-2026-5039 go.mod
HIGH GO-2026-5038 stdlib: GO-2026-5038 go.mod
HIGH GO-2026-5037 stdlib: GO-2026-5037 go.mod
HIGH GO-2026-5030 golang.org/x/net: GO-2026-5030 go.mod
HIGH GO-2026-5029 golang.org/x/net: GO-2026-5029 go.mod
HIGH GO-2026-5028 golang.org/x/net: GO-2026-5028 go.mod
HIGH GO-2026-5027 golang.org/x/net: GO-2026-5027 go.mod
HIGH GO-2026-5026 golang.org/x/net: GO-2026-5026 go.mod
HIGH GO-2026-5025 golang.org/x/net: GO-2026-5025 go.mod
HIGH GO-2026-5039 stdlib: GO-2026-5039 documentation/go.mod
HIGH GO-2026-5038 stdlib: GO-2026-5038 documentation/go.mod
HIGH GO-2026-5037 stdlib: GO-2026-5037 documentation/go.mod
MED SEC094 [SEC094] Go: world-writable file permissions: File or directory created with world-writab… commands/alpha/wasm/pull/command.go:89
MED DKR007 Docker build context has no .dockerignore .dockerignore
MED DEPCUR-NPM npm package `firebase-functions-test` is 3 major version(s) behind (^0.2.0 -> 3.5.0) firebase/functions/package.json
MED DEPCUR-NPM npm package `firebase-functions` is 4 major version(s) behind (^3.14.1 -> 7.2.5) firebase/functions/package.json
MED DEPCUR-NPM npm package `firebase-admin` is 4 major version(s) behind (^9.8.0 -> 13.10.0) firebase/functions/package.json
MED DKR001 Docker final stage has no non-root USER release/images/Dockerfile:15
LOW SEC132 [SEC132] String concat where the language has interpolation (AI style drift): String buil… release/formula/main.go:44
LOW ERR003 [ERR003] Ignored Error (Go): Ignoring error return values. commands/pkg/update/cmdupdate.go:57
LOW ERR003 [ERR003] Ignored Error (Go): Ignoring error return values. commands/pkg/get/cmdget.go:59
LOW ERR003 [ERR003] Ignored Error (Go): Ignoring error return values. commands/fn/render/cmdrender.go:56
LOW DEPCUR-NPM npm package `hugo-extended` is minor version(s) behind (^0.161.1 -> 0.162.1) documentation/package.json
LOW DEPCUR-NPM npm package `autoprefixer` is minor version(s) behind (^10.4.21 -> 10.5.0) documentation/package.json
LOW AIC003 Duplicated implementation block across source files thirdparty/cmdconfig/commands/runner/ru…:56
LOW AIC003 Duplicated implementation block across source files pkg/lib/util/addmergecomment/addmergeco…:53
LOW AIC003 Duplicated implementation block across source files pkg/lib/runneroptions/imagepullpolicy.go:2
LOW AIC003 Duplicated implementation block across source files commands/live/destroy/cmddestroy.go:89
LOW AIC003 Duplicated implementation block across source files commands/live/destroy/cmddestroy.go:85
LOW AIC003 Duplicated implementation block across source files commands/live/apply/cmdapply.go:132
LOW AIC003 Duplicated implementation block across source files commands/alpha/wasm/push/command.go:24
INFO MINED044 [MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger … documentation/scripts/serve-with-pagefi…:16
INFO MINED043 [MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr… demos/demo-magic/demo-magic.sh:161
INFO MINED060 [MINED060] Go Context No Cancel: context.Background() at request handler boundary leaks g… pkg/fn/runtime/exec.go:54
INFO MINED060 [MINED060] Go Context No Cancel: context.Background() at request handler boundary leaks g… main.go:51
INFO MINED060 [MINED060] Go Context No Cancel: context.Background() at request handler boundary leaks g… commands/util/factory.go:61
INFO MINED071 [MINED071] Go Panic Call: panic() crashes the process. Should return error in most cases. pkg/live/planner/cluster.go:337
INFO MINED071 [MINED071] Go Panic Call: panic() crashes the process. Should return error in most cases. internal/gitutil/errors.go:99
INFO MINED071 [MINED071] Go Panic Call: panic() crashes the process. Should return error in most cases. commands/alpha/live/plan/command.go:170
INFO DEPCUR-NPM npm package `postcss` is patch version(s) behind (^8.5.6 -> 8.5.15) documentation/package.json
Reset to top 5 78 findings available (after auto-suppression of test files + won't-fix)

Issue body (markdown)

## Code-quality scan: `kptdev/kpt`

**Score: 79/100 (B)**  ·  78 findings  ·  scanned 2026-06-05 13:20 UTC  ·  52,416 LOC

| Severity | Count |
|---|---|
| CRITICAL | 0 |
| HIGH | 50 |
| MEDIUM | 6 |
| LOW | 13 |

📊 [Full filterable report](https://repobility.com/scan/b7f85d24-e1ab-4fe3-ae8e-1bebaec5b884/)  ·  ![scorecard](https://repobility.com/scan/b7f85d24-e1ab-4fe3-ae8e-1bebaec5b884/report.png?v=1780665626-s2)

### Top findings

1. **HIGH** `SEC032` — Unrestricted File Upload — no extension/MIME validation
   `pkg/fn/runtime/wasm.go:159` · CWE-434
2. **HIGH** `SEC093` — Go: exec.Command with non-literal
   `pkg/fn/runtime/exec.go:57`
3. **HIGH** `SEC093` — Go: exec.Command with non-literal
   `pkg/fn/runtime/container_utils.go:53`
4. **HIGH** `SEC029` — Server-Side Request Forgery (SSRF) — outbound HTTP from user input
   `release/formula/main.go:59` · A10:2021 SSRF
5. **HIGH** `SEC029` — Server-Side Request Forgery (SSRF) — outbound HTTP from user input
   `pkg/api/kptfile/v1/validation.go:84` · A10:2021 SSRF

---

**Security note**: this issue is public. If any flagged finding is a real, exploitable vulnerability, please redirect to your `SECURITY.md` policy or open a [private security advisory](https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/privately-reporting-a-security-vulnerability) instead. We're happy to close this and re-submit privately.

---

_Filed automatically. Close this issue if not useful — we won't refile. Full report: https://repobility.com/scan/b7f85d24-e1ab-4fe3-ae8e-1bebaec5b884/_
Megaproject â high spam risk
Could not determine 'kptdev/kpt' star count (GitHub API rate-limited or unreachable). When in doubt about repo size, prefer opening a focused PR or a discussion rather than an issue.
Already filed
27/82 findings (33%) on this scan are already flagged as test-file, won't-fix, or suppressed. The scan is too noisy to file as a single issue. Curate down to specific actionable findings, or address the FP source first.

The button opens GitHubâs new-issue page in a new tab. You will see the title + body pre-filled â review, edit if you want, then click GitHubâs "Submit new issue" button. Repobility never posts anything on your behalf.

For real security findings on big repos: use the project's SECURITY.md or private advisory flow instead of a public issue.