Skip to content

fix: security hardening for v0.2.1#3

Merged
fheikens merged 1 commit intomainfrom
fix/security-hardening-v0.2.1
Mar 24, 2026
Merged

fix: security hardening for v0.2.1#3
fheikens merged 1 commit intomainfrom
fix/security-hardening-v0.2.1

Conversation

@fheikens
Copy link
Copy Markdown
Contributor

Summary

  • Upgrade Go 1.24 → 1.25 (resolves CVE-2026-25679 HIGH, CVE-2026-27142, CVE-2026-27139)
  • Upgrade runtime base Alpine 3.20 → 3.21
  • Add Helm container securityContext: readOnlyRootFilesystem, drop ALL capabilities, disallow privilege escalation
  • Add pod-level seccompProfile (RuntimeDefault) and runAsGroup
  • Add Dockerfile HEALTHCHECK instruction

Trivy Results

Scan Before After
Filesystem (vuln+secrets) 0 0
Config — Dockerfile 1 LOW 0
Config — Helm deployment 1 HIGH, 3 MEDIUM, 6 LOW 0 HIGH, 0 CRITICAL

Remaining (accepted — false positives)

  • KSV-0110 (LOW): default namespace — Helm sets namespace at install time
  • KSV-0125 (MEDIUM): ghcr.io flagged as "untrusted" — it is GitHub Container Registry

Test plan

  • go build ./... — clean
  • go test ./... — all pass (135 tests)
  • trivy fs --scanners vuln,secret . — 0 findings
  • trivy config . — 0 CRITICAL, 0 HIGH

🤖 Generated with Claude Code

- Upgrade Go from 1.24 to 1.25 (CVE-2026-25679, CVE-2026-27142, CVE-2026-27139)
- Upgrade runtime base from Alpine 3.20 to 3.21
- Add container securityContext: readOnlyRootFilesystem, drop ALL caps, no privilege escalation
- Add pod-level seccompProfile (RuntimeDefault) and runAsGroup
- Add Dockerfile HEALTHCHECK instruction

Trivy results (after):
  Filesystem: 0 vulnerabilities, 0 secrets
  Config: 0 CRITICAL, 0 HIGH (2 remaining are false positives: ghcr.io registry, default namespace)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@fheikens fheikens merged commit eca1627 into main Mar 24, 2026
2 checks passed
@fheikens fheikens deleted the fix/security-hardening-v0.2.1 branch March 24, 2026 02:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant