GHSA-6j52-38f8-qhxr - Shopify App: Token exchange shop context confusion may allow cross-shop authorization bypass in affected apps
In token-exchange authenticated controllers, `shopify_app` exposes shop context through helpers such as `current_shopify_domain`. Prior to the fix, `current_shopify_domain` could resolve to the sanitized `shop` query parameter instead of the shop identity derived from the verified Shopify ID token or active Shopify session.
As a result, a request authenticated for one shop could include a different `shop` query parameter, causing application code to treat the requested shop as the current shop.
Applications that used `current_shopify_domain`, or the request `shop` parameter, for authorization decisions, tenant lookup, stored access-token selection, or shop-scoped data access may have been vulnerable to cross-shop context confusion.
The patched version hardens token-exchange handling so that:
- `current_shopify_domain` resolves to the authenticated shop from the verified token or session.
- `authenticated_shopify_domain` exposes the trusted authenticated shop.
- `requested_shopify_domain` exposes the sanitized requested `shop` parameter for bootstrap or routing use cases only.
- Token-exchange requests are rejected with `401 Unauthorized` when the requested shop does not match the authenticated shop.
## Impact
In affected applications, an attacker with a valid Shopify session token for one shop could send an authenticated request that also supplied a different `shop` query parameter. If the application relied on `current_shopify_domain` or `params[:shop]` for security-sensitive shop scoping, application code could operate in the context of the requested shop rather than the authenticated shop.
Affected applications are those that:
1. Use `shopify_app` token-exchange authentication;
2. Accept authenticated controller requests where a `shop` query parameter may be present; and
3. Use `current_shopify_domain` or the request `shop` parameter for authorization, tenant lookup, stored access-token selection, or shop-scoped resource access.
Depen
HIGH
Severity & confidence
Source severityhigh
Platform severityhigh
Confidencehigh
Exploitationunknown
CVSS-
Affected
Vendorsshopify_app
Productsshopify_app
Reporting sources (2)
GitHub Security Advisories
NIST NVD - National Vulnerability Database
Timeline & provenance
Published2026-10-29T16:39:49
Last updated2026-11-05T15:48:34
Ingested2026-10-29T16:43:21
FreshnessNEAR-REAL-TIME
Threat typeadvisory
Recommended action
Review the advisory and upgrade affected packages to the first patched version.
Next steps
- Identify affected systems in your environment.
- Apply the vendor patch or mitigation guidance.
- Review logs for indicators described in the advisory.
- Follow the affected vendor/product to track updates.
Confidence explanation
Reported by a government or cert-grade source (CISA, NCSC, NVD, ENISA, MSRC).
Source type: vendor ยท Original: GitHub Security Advisories