How to fix insecure cookie on OpenCart
Set the HttpOnly, Secure, and SameSite=Strict flags on every session and CSRF cookie your store sets so they cannot be stolen by malicious scripts or sent over unencrypted connections.
Steps for OpenCart
- Open system/library/session.php and system/library/cart.php in your OpenCart installation (via FTP or Admin → Developer Tools if available).
- Find the `setcookie()` calls and add the flags: `setcookie($name, $value, ['expires' => time()+$expire, 'path' => '/', 'secure' => true, 'httponly' => true, 'samesite' => 'Strict']);`
- In config.php and admin/config.php, ensure `define('HTTPS_SERVER', 'https://...')` uses HTTPS.
- Search for any additional `setcookie()` calls in catalog/controller/startup/session.php and apply the same flags.
- Clear the OpenCart cache (Admin → Dashboard → blue cog icon → Refresh) and verify cookie flags in DevTools.
Set-Cookie: CSRFTOKEN=abc123; Path=/; Secure; HttpOnly; SameSite=StrictWhat is insecure cookie?
Every time a visitor lands on your store, their browser receives small data files called cookies — one of which typically holds their login session or a CSRF token (a secret code that proves form submissions came from your real site, not an attacker). Each cookie can carry protective "flags" that tell the browser how to handle it safely. The three critical flags are: **HttpOnly** (JavaScript running on the page cannot read the cookie, so a hacked ad script cannot steal it), **Secure** (the browser only sends the cookie over HTTPS, never plain HTTP), and **SameSite=Strict** (the browser refuses to send the cookie when a request originates from a third-party site, blocking cross-site request forgery attacks). When any of these flags are missing, the cookie is left partially unprotected.
A missing HttpOnly flag is the primary enabler of session-hijacking via Cross-Site Scripting (XSS): if even one ad, chat widget, or third-party script on your page is ever compromised, it can silently read your customers' session cookies and hand them to an attacker, who then logs in as that customer and sees their orders, saved addresses, and payment methods. A missing Secure flag risks cookies being transmitted in plain text if a customer ever hits an HTTP link, exposing their session to network eavesdroppers (especially on public Wi-Fi). A missing SameSite flag enables Cross-Site Request Forgery (CSRF), where a malicious page tricks a logged-in customer's browser into submitting unwanted actions — like changing their email or placing a fraudulent order — on your store. Beyond customer harm, a breach involving stolen session tokens can trigger PCI-DSS violations, GDPR fines, and lasting reputational damage that directly kills revenue.
See the complete Insecure cookie guide for every platform and the full background.
Not sure if your OpenCart store has this?
Run a free SEOLZ audit — we’ll find insecure cookie and every other issue across your whole site.
Scan my site free