Weakness in Transfer Validation Logic in @solana/pay
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
Solana Pay is a protocol and set of reference implementations that enable developers to incorporate decentralized payments into their apps and services. When a Solana Pay transaction is located using a reference key, it may be checked to represent a transfer of the desired amount to the recipient, using the supplied `validateTransfer` function. An edge case regarding this mechanism could cause the validation logic to validate multiple transfers. This issue has been patched as of version `0.2.1`. Users of the Solana Pay SDK should upgrade to it. There are no known workarounds for this issue.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| solana-labs | solana-pay | before 0.2.1 | 0.2.1 | Patch available | CNA |
| — | @solana/pay (npm) | before 0.2.1 | 0.2.1 | Patch available | GHSA-j47c-j42c-mwqq |
- solana-pay Vendorsolana-labs Affected before 0.2.1 Fixed in 0.2.1 Patch available CNA
- @solana/pay (npm) Vendor— Affected before 0.2.1 Fixed in 0.2.1 Patch available GHSA-j47c-j42c-mwqq
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:solanalabs:pay:*:*:*:*:*:*:*:* | before 0.2.1 | Vulnerable | solana-labs |
- cpe:2.3:a:solanalabs:pay:*:*:*:*:*:*:*:* Versions before 0.2.1 Vulnerable ·solana-labs
Remediation
- Fix · CNA solana-pay (solana-labs) Fixed in 0.2.1
- Fix · GHSA-j47c-j42c-mwqq @solana/pay (npm) Fixed in 0.2.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2022-35917
- 2026-10-03 Alias added: GHSA-j47c-j42c-mwqq
References
Patch 2
Advisory 3
Sources
- CVE-2022-35917 · CVE Program
- CVE-2022-35917 · NVD
- FIRST EPSS
- GHSA-j47c-j42c-mwqq · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences