Security
Headlines
HeadlinesLatestCVEs

Headline

GHSA-j47c-j42c-mwqq: Solana Pay Vulnerable to Weakness in Transfer Validation Logic

Description

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.

Impact

Most known Solana Pay point of sale applications are currently run on physical point of sale devices, which makes this issue unlikely to occur. However, there may be web-based point of sale applications using the protocol where it may be more likely to occur.

Patches

This issue has been patched as of version 0.2.1. Users of the Solana Pay SDK should upgrade to it.

ghsa
#vulnerability#web#nodejs#js#git

Solana Pay Vulnerable to Weakness in Transfer Validation Logic

Moderate severity GitHub Reviewed Published Aug 6, 2022 in solana-labs/solana-pay • Updated Aug 6, 2022

Package

npm @solana/pay (npm)

Affected versions

<= 0.2.0

Patched versions

0.2.1

Description

Description

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.

Impact

Most known Solana Pay point of sale applications are currently run on physical point of sale devices, which makes this issue unlikely to occur. However, there may be web-based point of sale applications using the protocol where it may be more likely to occur.

Patches

This issue has been patched as of version 0.2.1. Users of the Solana Pay SDK should upgrade to it.

References

  • GHSA-j47c-j42c-mwqq
  • https://nvd.nist.gov/vuln/detail/CVE-2022-35917
  • solana-labs/solana-pay@ac6ce0d
  • https://github.com/solana-labs/solana-pay/blob/master/SPEC.md#reference
  • https://github.com/solana-labs/solana-pay/blob/master/core/src/validateTransfer.ts

jordansexton published the maintainer security advisory

Jul 28, 2022

Severity

Moderate

5.3

/ 10

CVSS base metrics

Attack vector

Network

Attack complexity

Low

Privileges required

None

User interaction

None

Scope

Unchanged

Confidentiality

None

Integrity

Low

Availability

None

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Weaknesses

CWE-670

CVE ID

CVE-2022-35917

GHSA ID

GHSA-j47c-j42c-mwqq

Source code

solana-labs/solana-pay

Credits

  • cmowenby

Checking history

See something to contribute? Suggest improvements for this vulnerability.

Related news

CVE-2022-35917: solana-pay/SPEC.md at master · solana-labs/solana-pay

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.