Read the docs
TI-2026-24850 Aliases CVE-2026-32322GHSA-x2hw-px52-wp4m

soroban-sdk: `Fr` scalar field equality comparison bypasses modular reduction

Priority LOW 30CWE-697Published · Updated

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

soroban-sdk is a Rust SDK for Soroban contracts. Prior to 22.0.11, 23.5.3, and 25.3.0, The Fr (scalar field) types for BN254 and BLS12-381 in soroban-sdk compared values using their raw U256 representation without first reducing modulo the field modulus r. This caused mathematically equal field elements to compare as not-equal when one or both values were unreduced (i.e., >= r). The vulnerability requires an attacker to supply crafted Fr values through contract inputs, and compare them directly without going through host-side arithmetic operations. Smart contracts that rely on Fr equality checks for security-critical logic could produce incorrect results. The impact depends on how the affected contract uses Fr equality comparisons, but can result in incorrect authorization decisions or validation bypasses in contracts that perform equality checks on user-supplied scalar values. This vulnerability is fixed in 22.0.11, 23.5.3, and 25.3.0.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00307 23rd percentileScored 2026-11-07
Fix Fixed rs-soroban-sdk (stellar): 25.3.0, 23.5.3, 22.0.11soroban-sdk (crates.io): 25.3.0, 23.5.3, 22.0.11

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

VendorProductAffected versionsFixed inStatusSource
stellarrs-soroban-sdk25.0.0 to before 25.3.0; 23.0.0 to before 23.5.3; before 22.0.1125.3.0, 23.5.3, 22.0.11Patch availableCNA
—soroban-sdk (crates.io)25.0.0 to before 25.3.025.3.0Patch availableGHSA-x2hw-px52-wp4m
—soroban-sdk (crates.io)23.0.0 to before 23.5.323.5.3Patch availableGHSA-x2hw-px52-wp4m
—soroban-sdk (crates.io)before 22.0.1122.0.11Patch availableGHSA-x2hw-px52-wp4m
  • rs-soroban-sdk Vendorstellar Affected 25.0.0 to before 25.3.0; 23.0.0 to before 23.5.3; before 22.0.11 Fixed in 25.3.0, 23.5.3, 22.0.11 Patch available CNA
  • soroban-sdk (crates.io) Vendor— Affected 25.0.0 to before 25.3.0 Fixed in 25.3.0 Patch available GHSA-x2hw-px52-wp4m
  • soroban-sdk (crates.io) Vendor— Affected 23.0.0 to before 23.5.3 Fixed in 23.5.3 Patch available GHSA-x2hw-px52-wp4m
  • soroban-sdk (crates.io) Vendor— Affected before 22.0.11 Fixed in 22.0.11 Patch available GHSA-x2hw-px52-wp4m

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:stellar:rs-soroban-sdk:*:*:*:*:*:rust:*:*before 22.0.11; 23.0.0 to before 23.5.3; 25.0.0 to before 25.3.0Vulnerablestellar
  • cpe:2.3:a:stellar:rs-soroban-sdk:*:*:*:*:*:rust:*:* Versions before 22.0.11; 23.0.0 to before 23.5.3; 25.0.0 to before 25.3.0 Vulnerable ·stellar

Remediation

  • Fix · CNA rs-soroban-sdk (stellar) Fixed in 25.3.0, 23.5.3, 22.0.11
  • Fix · GHSA-x2hw-px52-wp4m soroban-sdk (crates.io) Fixed in 25.3.0 Advisory →
  • Fix · GHSA-x2hw-px52-wp4m soroban-sdk (crates.io) Fixed in 23.5.3 Advisory →
  • Fix · GHSA-x2hw-px52-wp4m soroban-sdk (crates.io) Fixed in 22.0.11 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-32322
  2. 2026-10-03 Alias added: GHSA-x2hw-px52-wp4m

References

  • TI-2026-21237 rs-soroban-sdk #[contractimpl] macro calls inherent function instead of trait function when names collide CVSS 3.1HIGH 7.5
  • TI-2026-20074 soroban-sdk has overflow in Bytes::slice, Vec::slice, GenRange::gen_range for u64 CVSS 3.1MEDIUM 5.3

Sources