
Cloud Vulnerability DB
A community-led vulnerabilities database
The close REST endpoint of the BitPay Magento 2 plugin did not require authentication. With the default settings, anyone could delete any order in the store by sending its order number. Fixed in 10.2.3.
GET /rest/V1/bitpay-bpcheckout/close is declared with the anonymous resource in etc/webapi.xml, so anyone can call it. Model/IpnManagement.php::postClose() loaded the order from the orderID parameter and deleted it when Invoice Close Handling was set to Delete Order, which is the default value in etc/config.xml.
It did not check who sent the request, which payment method the order used, or whether the order was already paid.
Fixed in 10.2.3. The endpoint now requires the order's return hash, only works on BitPay orders, and only deletes orders that are still unpaid in Magento and in BitPay.
Until you can upgrade, go to Stores > Configuration > Sales > Payment Methods > BitPay and set Invoice Close Handling to Keep Order. With this setting the endpoint does not delete orders. If you cannot upgrade, set Invoice Close Handling to Keep Order. The close endpoint will then stop deleting orders.
/rest/V1/bitpay-bpcheckout/close?orderID=<order number>.Missing authentication on a destructive action (CWE-306, CWE-639). Any Magento 2 store running the BitPay plugin up to 10.2.2 with the default Invoice Close Handling setting is affected. An unauthenticated attacker can delete orders, including paid orders and orders paid with other payment methods. Order numbers are sequential, so they are easy to guess. Stores lose order records and may not be able to fulfil paid orders.
Source: NVD
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."