CVE-2021-47923: OpenCart 3.0.3.8 Session Fixation via OCSESSID Cookie
OpenCart 3.0.3.8 contains a session fixation vulnerability that allows attackers to hijack user sessions by injecting arbitrary values into the OCSESSID cookie. Attackers can set malicious OCSESSID cookie values that the server accepts and maintains, enabling session takeover and unauthorized access to user accounts.
Security readout for executives and security teams
Plain-English summary
An older version of the OpenCart shopping cart platform lets an attacker pre-set a victim's login cookie, so when the victim logs in the attacker can ride the same session and impersonate them. For an online store this can mean stolen customer accounts, hijacked admin access, fraudulent orders, and exposure of customer data. The risk is highest for sites still running OpenCart 3.0.3.8 in production.
Executive priority
Treat as a priority for any OpenCart 3.0.3.8 storefront. Account takeover on a public e-commerce site risks customer data exposure, fraudulent orders, and brand damage, so plan an upgrade or compensating controls within the standard high-severity SLA.
Technical view
CVE-2021-47923 is a session fixation flaw (CWE-290) in OpenCart 3.0.3.8. The application accepts an attacker-chosen OCSESSID cookie value and continues to use that identifier after the victim authenticates, instead of issuing a fresh session ID. An attacker who plants the cookie in the victim's browser can take over the resulting authenticated session. CVSS 3.1 base score is 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
Likely exposure
Any internet-facing OpenCart 3.0.3.8 storefront is exposed, since the OCSESSID cookie is part of the standard storefront and admin login flow. Sites behind reverse proxies that do not rewrite session cookies remain affected. Customer accounts and administrator sessions are both within scope.
Exploitation context
A public proof-of-concept exists on ExploitDB (50555) and a VulnCheck advisory is published, so the technique is well-documented. The CVE is not listed in CISA KEV and no confirmed in-the-wild campaigns are cited in the bundle. Attack requires luring a victim to use the attacker-controlled session value.
Researcher notes
CWE-290 (Authentication Bypass by Spoofing) reflects classic session fixation: the server accepts an attacker-supplied OCSESSID and does not regenerate it after authentication. CVSS 9.8 reflects the network-reachable, unauthenticated nature, though real-world impact depends on whether the attacker can deliver the chosen cookie (XSS, phishing link with set-cookie response, shared network, or a sibling subdomain). Affected scope cited is OpenCart 3.0.3.8 only; downstream forks and other 3.0.x point releases were not enumerated in the bundle and should be verified independently.
Mitigation direction
Upgrade OpenCart to a vendor-supported release newer than 3.0.3.8 once vendor guidance confirms the fix.
Force regeneration of OCSESSID on every successful login and privilege change.
Set OCSESSID with HttpOnly, Secure, and SameSite attributes via the web server or framework configuration.
Invalidate and rotate all existing sessions after deployment, requiring users to re-authenticate.
Monitor and consult the official OpenCart site and VulnCheck advisory for an authoritative patch reference.
Validation and detection
Confirm the OpenCart build number is 3.0.3.8 via the admin console or version files.
In a lab, capture OCSESSID before login, authenticate, and verify the cookie value is unchanged.
Review session handling code or vendor changelog for explicit session ID regeneration on login.
Inspect Set-Cookie response headers for missing HttpOnly, Secure, and SameSite attributes on OCSESSID.
Cross-reference the VulnCheck advisory and ExploitDB 50555 details against the running configuration.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-290: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
3Timeline events
1ADP providers
4Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-290 · source CWE mapping
Authentication Bypass by Spoofing
Authentication Bypass by Spoofing represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.