CVE-2026-24136

7.5 HIGH

📋 TL;DR

This CVE describes an Insecure Direct Object Reference (IDOR) vulnerability in Saleor e-commerce platform that allows unauthenticated attackers to access sensitive order information in plain text. The vulnerability affects orders created before Saleor 3.2.0, potentially exposing personally identifiable information (PII). All Saleor instances running vulnerable versions are affected.

💻 Affected Systems

Products:
  • Saleor e-commerce platform
Versions: 3.2.0 through 3.20.109, 3.21.0-a.0 through 3.21.44, 3.22.0-a.0 through 3.22.28
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects orders created before Saleor 3.2.0. Orders created in vulnerable versions themselves are not affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Mass exfiltration of customer PII including names, addresses, payment information, and order history leading to identity theft, financial fraud, and regulatory violations.

🟠

Likely Case

Unauthorized access to customer order data containing PII, potentially violating GDPR/CCPA compliance and damaging customer trust.

🟢

If Mitigated

Limited or no data exposure with proper access controls and monitoring in place.

🌐 Internet-Facing: HIGH - Unauthenticated exploitation allows remote attackers to access sensitive data without credentials.
🏢 Internal Only: MEDIUM - Internal users could exploit but unauthenticated external access poses greater risk.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation involves manipulating GraphQL queries to access unauthorized order data. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.22.29, 3.21.45, 3.20.110

Vendor Advisory: https://github.com/saleor/saleor/security/advisories/GHSA-r6fj-f4r9-36gr

Restart Required: Yes

Instructions:

1. Backup your Saleor instance and database. 2. Update Saleor to patched version using pip: 'pip install saleor==3.22.29' (or appropriate version). 3. Apply database migrations: 'python manage.py migrate'. 4. Restart the Saleor service.

🔧 Temporary Workarounds

WAF Rule to Block Order Queries

all

Temporarily block non-staff users from accessing the order() GraphQL query using Web Application Firewall rules.

🧯 If You Can't Patch

  • Implement strict access controls on GraphQL endpoints to verify user authorization before processing order queries.
  • Monitor and alert on unusual patterns of order data access, especially from unauthenticated or external sources.

🔍 How to Verify

Check if Vulnerable:

Check Saleor version with: 'python -c "import saleor; print(saleor.__version__)"' and compare against affected ranges.

Check Version:

python -c "import saleor; print(saleor.__version__)"

Verify Fix Applied:

After patching, attempt to access order data as unauthenticated user via GraphQL query to confirm access is denied.

📡 Detection & Monitoring

Log Indicators:

  • Multiple failed authentication attempts followed by successful order queries
  • Unusual volume of order() GraphQL queries from single IP
  • Order data access from unauthenticated sessions

Network Indicators:

  • GraphQL queries to order endpoint without authentication headers
  • Unusual patterns in GraphQL query structure targeting order data

SIEM Query:

source="saleor_logs" AND (query="order" OR query="order()") AND user="anonymous" | stats count by src_ip

🔗 References

📤 Share & Export