Skip to content

fix(marketplace): bump go-jose to v4.1.6 for GHSA-mgcc-cww5-fp2q - #7

Merged
Kim-YeongHyeon merged 1 commit into
mainfrom
fix/bump-go-jose-v4.1.6
Oct 29, 2026
Merged

Kim-YeongHyeon merged 1 commit into
mainfrom
fix/bump-go-jose-v4.1.6

Conversation

@Kim-YeongHyeon

Copy link
Copy Markdown
Contributor

문제

cryptolabinc/minio:2025-10-15-go1.26.9 이미지를 Grype로 검사하면 High 등급 1건이 나옵니다.

취약점 패키지 해결 버전
GHSA-mgcc-cww5-fp2q (CVE-2026-116587) github.com/go-jose/go-jose/v4 v4.1.4 4.1.6

envector nightly의 cve-scan-report가 이 이미지를 검사 대상에 넣고 있습니다.

원인

go-jose/v4는 cmd의 OpenID 연동이 쓰는 github.com/coreos/go-oidc/v3/oidc를 통해 들어오는 indirect 의존성입니다. 2026-10-27에 RSA 키가 든 JWK를 파싱할 때 DoS가 가능한 취약점이 공개되었습니다.

채택한 해결 방안

go get github.com/go-jose/go-jose/v4@v4.1.6으로 go.mod의 indirect 버전을 올렸습니다. go mod tidy는 main에서도 go-openapi 테스트 의존성 문제로 실패하므로 실행하지 않았고, 그래서 go.sum에는 이전 버전 줄이 남아 있습니다. 빌드에는 영향이 없습니다.

선택 이유

v4.1.6이 이 취약점을 고친 최초 버전이자 최신 릴리스입니다. v4.1.6은 JWK 파싱에서 RSA modulus를 4096비트로 제한합니다. go-oidc는 JWKS 전체를 jose.JSONWebKeySet 하나로 파싱하므로, OpenID IdP의 JWKS에 4096비트를 넘는 RSA 키가 있으면 해당 IdP 검증이 실패합니다.

검증 방법

  • CGO_ENABLED=0 go build -tags kqueue -trimpath .(Dockerfile과 같은 옵션) 성공. go version -m에서 go1.26.9, go-jose v4.1.6 확인
  • 빌드한 바이너리를 Grype로 검사: High 이상 0건
  • go vet ./cmd/ 통과, go test -short -run 'OpenID|OIDC|Oidc|STS' ./cmd/ 통과
  • 멀티아치 이미지 빌드와 배포 동작은 확인하지 않았습니다. 머지 후 새 태그로 amd64/arm64 이미지를 빌드할 때 확인합니다.

관련 문서

go-jose v4.1.4 (pulled in by go-oidc) is flagged High by Grype: DoS when
parsing JWKs with RSA keys. v4.1.6 caps the RSA modulus accepted in JWK
parsing at 4096 bits.
@Kim-YeongHyeon Kim-YeongHyeon self-assigned this Oct 28, 2026
@Kim-YeongHyeon
Kim-YeongHyeon marked this pull request as ready for review October 29, 2026 03:36
@Kim-YeongHyeon
Kim-YeongHyeon merged commit 0520ea7 into main Oct 29, 2026
1 check passed
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.

2 participants