CVE-2026-33661

Pay is an open-source payment SDK extension package for various Chinese payment services. Prior to version 3.7.20, the `verify_wechat_sign()` function in `src/Functions.php` unconditionally skips all signature verification when the PSR-7 request reports `localhost` as the host. An attacker can exploit this by sending a crafted HTTP request to the WeChat Pay callback endpoint with a `Host: localhost` header, bypassing the RSA signature check entirely. This allows forging fake WeChat Pay payment success notifications, potentially causing applications to mark orders as paid without actual payment. Version 3.7.20 fixes the issue.
Configurations

Configuration 1 (hide)

cpe:2.3:a:yansongda:pay:*:*:*:*:*:*:*:*

History

01 Apr 2026, 13:47

Type Values Removed Values Added
CPE cpe:2.3:a:yansongda:pay:*:*:*:*:*:*:*:*
First Time Yansongda pay
Yansongda
References () https://github.com/yansongda/pay/commit/26987ebf789f1e7f0a85febb640986ab4289fd7f - () https://github.com/yansongda/pay/commit/26987ebf789f1e7f0a85febb640986ab4289fd7f - Patch
References () https://github.com/yansongda/pay/releases/tag/v3.7.20 - () https://github.com/yansongda/pay/releases/tag/v3.7.20 - Release Notes
References () https://github.com/yansongda/pay/security/advisories/GHSA-q938-ghwv-8gvc - () https://github.com/yansongda/pay/security/advisories/GHSA-q938-ghwv-8gvc - Exploit, Vendor Advisory

27 Mar 2026, 20:16

Type Values Removed Values Added
References () https://github.com/yansongda/pay/security/advisories/GHSA-q938-ghwv-8gvc - () https://github.com/yansongda/pay/security/advisories/GHSA-q938-ghwv-8gvc -
Summary
  • (es) Pay es un paquete de extensión de SDK de pago de código abierto para varios servicios de pago chinos. Antes de la versión 3.7.20, la función `verify_wechat_sign()` en `src/Functions.php` omite incondicionalmente toda la verificación de firma cuando la solicitud PSR-7 informa localhost como el host. Un atacante puede explotar esto enviando una solicitud HTTP manipulada al endpoint de callback de WeChat Pay con un encabezado Host: localhost, eludiendo por completo la verificación de firma RSA. Esto permite falsificar notificaciones de éxito de pago falsas de WeChat Pay, lo que podría hacer que las aplicaciones marquen los pedidos como pagados sin un pago real. La versión 3.7.20 corrige el problema.

26 Mar 2026, 22:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-26 22:16

Updated : 2026-04-01 13:47


NVD link : CVE-2026-33661

Mitre link : CVE-2026-33661

CVE.ORG link : CVE-2026-33661


JSON object : View

Products Affected

yansongda

  • pay
CWE
CWE-290

Authentication Bypass by Spoofing