Ability to change order address without triggering address validations in solidus
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 2.8.6, 2.9.6, 2.10.2
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In solidus before versions 2.8.6, 2.9.6, and 2.10.2, there is an bility to change order address without triggering address validations. This vulnerability allows a malicious customer to craft request data with parameters that allow changing the address of the current order without changing the shipment costs associated with the new shipment. All stores with at least two shipping zones and different costs of shipment per zone are impacted. This problem comes from how checkout permitted attributes are structured. We have a single list of attributes that are permitted across the whole checkout, no matter the step that is being submitted. See the linked reference for more information. As a workaround, if it is not possible to upgrade to a supported patched version, please use this gist in the references section.
Timeline
- CVE published
- Record last updated
Affected versions
- solidusio solidus
fixed in 2.8.6; From 2.9.0 · fixed in 2.9.6; From 2.10.0 · fixed in 2.10.2
- solidus_frontendRubyGems
fixed in 2.8.6
- solidus_frontendRubyGems
From 2.9.0 · fixed in 2.9.6
- solidus_frontendRubyGems
From 2.10.0 · fixed in 2.10.2
- solidus_apiRubyGems
fixed in 2.8.6
- solidus_apiRubyGems
From 2.9.0 · fixed in 2.9.6
- solidus_apiRubyGems
From 2.10.0 · fixed in 2.10.2