CVE-2026-41145 MinIO has an Unauthenticated Object Write via Query-String Credential Signature Bypass in Unsigned-Trailer Uploads

High 8.8 Published Updated

Attackers with a valid access key can write arbitrary objects to any bucket without a secret key or valid signature, bypassing authentication in MinIO.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-41145?

CVE-2026-41145 is a high-severity authentication bypass vulnerability in minio, published on 22 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

MinIO is a high-performance object storage system. Starting in RELEASE.2023-05-18T00-05-36Z and prior to RELEASE.2026-04-11T03-20-12Z, an authentication bypass vulnerability in MinIO's `STREAMING-UNSIGNED-PAYLOAD-TRAILER` code path allows any user who knows a valid access key to write arbitrary objects to any bucket without knowing the secret key or providing a valid cryptographic signature. Any MinIO deployment is impacted. The attack requires only a valid access key (the well-known default `minioadmin`, or any key with WRITE permission on a bucket) and a target bucket name. `PutObjectHandler` and `PutObjectPartHandler` call `newUnsignedV4ChunkedReader` with a signature verification gate based solely on the presence of the `Authorization` header. Meanwhile, `isPutActionAllowed` extracts credentials from either the `Authorization` header or the `X-Amz-Credential` query parameter, and trusts whichever it finds. An attacker omits the `Authorization` header and supplies credentials exclusively via the query string. The signature gate evaluates to `false`, `doesSignatureMatch` is never called, and the request proceeds with the permissions of the impersonated access key. This affects `PutObjectHandler` (standard and tables/warehouse bucket paths) and `PutObjectPartHandler` (multipart uploads). Users of the open-source `minio/minio` project should upgrade to MinIO AIStor `RELEASE.2026-04-11T03-20-12Z` or later. If upgrading is not immediately possible, block unsigned-trailer requests at the load balancer. Reject any request containing `X-Amz-Content-Sha256: STREAMING-UNSIGNED-PAYLOAD-TRAILER` at the reverse proxy or WAF layer. Clients can use `STREAMING-AWS4-HMAC-SHA256-PAYLOAD-TRAILER` (the signed variant) instead. Alternatively, restrict WRITE permissions. Limit `s3:PutObject` grants to trusted principals. While this reduces the attack surface, it does not eliminate the vulnerability since any user with WRITE permission can exploit it with only their access key.

Weakness: CWE-287

Which versions are affected by CVE-2026-41145?

3 open source packages ship an affected version, including github.com/minio/minio. It affects 1 product.

PackageAffectedFixed in
github.com/minio/minio GoFrom 0.0.0-20230506025312-76913a9fd5c6None
github.com/minio/minio GoFrom 0.0.0-20230506025312-76913a9fd5c6 to 0.0.0-20260212201848-7aac2a2c5b7cNone
github.com/minio/minio GoFrom 0.0.0-20230506025312-76913a9fd5c6 to 0.0.0-20260212201848-7aac2a2c5b7cNone

Products include Minio Minio.

How do I fix CVE-2026-41145?

Upgrade to a fixed version.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2026-41145 being exploited?

There is no known exploitation of CVE-2026-41145 in the wild and no public exploit code.

Sources

Also known as GHSA-hv4r-mvr4-25vw, GO-2026-5437, ROOT-APP-GOBINARY-CVE-2026-41145.

Is CVE-2026-41145 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free