Skip to main content
Testkube 2.7.0 is out! An improved resource management architecture and a new GitOps Agent, AI improvements, and more. Read More

testkube-api-server-2.7.2_linux_amd64

digestsha256:29c9cc88705fbcc951f1a715c4a028915d87b3d5b5bcb8a953c3c829a5543a2c
vulnerabilitiescritical: 1 high: 7 medium: 17 low: 4
platformlinux/amd64
size71 MB
packages265
critical: 1 high: 0 medium: 0 low: 0 google.golang.org/grpc 1.79.2 (golang)

pkg:golang/google.golang.org/grpc@1.79.2

# api-server.Dockerfile (32:32)
COPY --from=build /app /bin/app

critical 9.1: CVE--2026--33186 Improper Authorization

Affected range<1.79.3
Fixed version1.79.3
CVSS Score9.1
CVSS VectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Description

Impact

What kind of vulnerability is it? Who is impacted?

It is an Authorization Bypass resulting from Improper Input Validation of the HTTP/2 :path pseudo-header.

The gRPC-Go server was too lenient in its routing logic, accepting requests where the :path omitted the mandatory leading slash (e.g., Service/Method instead of /Service/Method). While the server successfully routed these requests to the correct handler, authorization interceptors (including the official grpc/authz package) evaluated the raw, non-canonical path string. Consequently, "deny" rules defined using canonical paths (starting with /) failed to match the incoming request, allowing it to bypass the policy if a fallback "allow" rule was present.

Who is impacted? This affects gRPC-Go servers that meet both of the following criteria:

  1. They use path-based authorization interceptors, such as the official RBAC implementation in google.golang.org/grpc/authz or custom interceptors relying on info.FullMethod or grpc.Method(ctx).
  2. Their security policy contains specific "deny" rules for canonical paths but allows other requests by default (a fallback "allow" rule).

The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed :path headers directly to the gRPC server.

Patches

Has the problem been patched? What versions should users upgrade to?

Yes, the issue has been patched. The fix ensures that any request with a :path that does not start with a leading slash is immediately rejected with a codes.Unimplemented error, preventing it from reaching authorization interceptors or handlers with a non-canonical path string.

Users should upgrade to the following versions (or newer):

  • v1.79.3
  • The latest master branch.

It is recommended that all users employing path-based authorization (especially grpc/authz) upgrade as soon as the patch is available in a tagged release.

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods:

Add an "outermost" interceptor to your server that validates the path before any other authorization logic runs:

func pathValidationInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
if info.FullMethod == "" || info.FullMethod[0] != '/' {
return nil, status.Errorf(codes.Unimplemented, "malformed method name")
}
return handler(ctx, req)
}

// Ensure this is the FIRST interceptor in your chain
s := grpc.NewServer(
grpc.ChainUnaryInterceptor(pathValidationInterceptor, authzInterceptor),
)

2. Infrastructure-Level Normalization

If your gRPC server is behind a reverse proxy or load balancer (such as Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to enforce strict HTTP/2 compliance for pseudo-headers and reject or normalize requests where the :path header does not start with a leading slash.

3. Policy Hardening

Switch to a "default deny" posture in your authorization policies (explicitly listing all allowed paths and denying everything else) to reduce the risk of bypasses via malformed inputs.

critical: 0 high: 4 medium: 6 low: 0 libssl3 3.3.5-r0 (apk)

pkg:apk/alpine/libssl3@3.3.5-r0?arch=x86_64&distro=alpine-3.20.8&upstream=openssl

# api-server.Dockerfile (29:29)
FROM ${ALPINE_IMAGE}

high : CVE--2025--15467

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score1.010%
EPSS Percentile77th percentile
Description

high : CVE--2025--69421

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.065%
EPSS Percentile20th percentile
Description

high : CVE--2025--69420

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.199%
EPSS Percentile42nd percentile
Description

high : CVE--2025--69419

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.061%
EPSS Percentile19th percentile
Description

medium : CVE--2025--66199

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.064%
EPSS Percentile20th percentile
Description

medium : CVE--2025--15468

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.052%
EPSS Percentile16th percentile
Description

medium : CVE--2026--22795

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.017%
EPSS Percentile4th percentile
Description

medium : CVE--2026--22796

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.077%
EPSS Percentile23rd percentile
Description

medium : CVE--2025--68160

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.016%
EPSS Percentile4th percentile
Description

medium : CVE--2025--69418

Affected range<3.3.6-r0
Fixed version3.3.6-r0
EPSS Score0.005%
EPSS Percentile0th percentile
Description
critical: 0 high: 1 medium: 9 low: 1 libcurl 8.14.1-r2 (apk)

pkg:apk/alpine/libcurl@8.14.1-r2?arch=x86_64&distro=alpine-3.20.8&upstream=curl

# api-server.Dockerfile (30:30)
RUN apk --no-cache add ca-certificates libssl3 git

high : CVE--2026--3805

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.054%
EPSS Percentile17th percentile
Description

medium : CVE--2026--3784

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.020%
EPSS Percentile5th percentile
Description

medium : CVE--2026--1965

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.054%
EPSS Percentile17th percentile
Description

medium : CVE--2025--14017

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.007%
EPSS Percentile1st percentile
Description

medium : CVE--2025--13034

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.008%
EPSS Percentile1st percentile
Description

medium : CVE--2026--3783

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.021%
EPSS Percentile5th percentile
Description

medium : CVE--2025--15079

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.035%
EPSS Percentile10th percentile
Description

medium : CVE--2025--14819

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.045%
EPSS Percentile14th percentile
Description

medium : CVE--2025--14524

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.034%
EPSS Percentile10th percentile
Description

medium : CVE--2025--10966

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.018%
EPSS Percentile4th percentile
Description

low : CVE--2025--15224

Affected range<=8.14.1-r2
Fixed versionNot Fixed
EPSS Score0.084%
EPSS Percentile24th percentile
Description
critical: 0 high: 1 medium: 1 low: 0 c-ares 1.33.1-r0 (apk)

pkg:apk/alpine/c-ares@1.33.1-r0?arch=x86_64&distro=alpine-3.20.8

# api-server.Dockerfile (30:30)
RUN apk --no-cache add ca-certificates libssl3 git

high : CVE--2025--31498

Affected range<=1.33.1-r0
Fixed versionNot Fixed
EPSS Score0.618%
EPSS Percentile70th percentile
Description

medium : CVE--2025--62408

Affected range<=1.33.1-r0
Fixed versionNot Fixed
EPSS Score0.019%
EPSS Percentile5th percentile
Description
critical: 0 high: 1 medium: 0 low: 0 github.com/docker/cli 29.2.1+incompatible (golang)

pkg:golang/github.com/docker/cli@29.2.1%2Bincompatible

# api-server.Dockerfile (32:32)
COPY --from=build /app /bin/app

high : CVE--2025--15558

Affected range>=19.03.0+incompatible
Fixed versionNot Fixed
EPSS Score0.011%
EPSS Percentile1st percentile
Description

Docker CLI Plugins: Uncontrolled Search Path Element Leads to Local Privilege Escalation on Windows in github.com/docker/cli

critical: 0 high: 0 medium: 1 low: 2 ssl_client 1.36.1-r30 (apk)

pkg:apk/alpine/ssl_client@1.36.1-r30?arch=x86_64&distro=alpine-3.20.8&upstream=busybox

# api-server.Dockerfile (29:29)
FROM ${ALPINE_IMAGE}

medium : CVE--2025--60876

Affected range<=1.36.1-r30
Fixed versionNot Fixed
EPSS Score0.064%
EPSS Percentile20th percentile
Description

low : CVE--2025--46394

Affected range<1.36.1-r31
Fixed version1.36.1-r31
EPSS Score0.083%
EPSS Percentile24th percentile
Description

low : CVE--2024--58251

Affected range<1.36.1-r31
Fixed version1.36.1-r31
EPSS Score0.077%
EPSS Percentile23rd percentile
Description
critical: 0 high: 0 medium: 0 low: 1 zlib 1.3.1-r1 (apk)

pkg:apk/alpine/zlib@1.3.1-r1?arch=x86_64&distro=alpine-3.20.8

# api-server.Dockerfile (29:29)
FROM ${ALPINE_IMAGE}

low : CVE--2026--27171

Affected range<=1.3.1-r1
Fixed versionNot Fixed
EPSS Score0.006%
EPSS Percentile0th percentile
Description