demo-secure/README.md
2026-05-20 07:05:24 +00:00

27 lines
924 B
Markdown

# demo-secure
Minimal Go HTTP service used by the RHADS supply-chain demo.
## Demo CVE
`go.mod` pins `github.com/dgrijalva/jwt-go v3.2.0+incompatible`, which has a
documented vulnerability (CVE-2020-26160 — `alg=none` not rejected). The
`/verify` handler actually calls into this library, so SBOM scanners pick the
dependency up as in-use and RHTPA flags it.
## Fixing the CVE
1. `go get github.com/golang-jwt/jwt/v5`
2. `go mod tidy`
3. Update the import in `main.go` from `github.com/dgrijalva/jwt-go` to
`github.com/golang-jwt/jwt/v5`
4. Commit and push — the Tekton pipeline rebuilds, re-signs, ArgoCD redeploys,
RHTPA dashboard flips from red to green.
## Endpoints
- `GET /` — landing page
- `GET /version` — JSON with Go version + dep list (proves which JWT lib is shipped)
- `GET /healthz` — liveness probe target
- `POST /verify``Authorization: Bearer <jwt>` → returns claims if valid