How to fix passive scan only on Shopify

Set up regular active security testing (DAST) on a staging copy of your store to catch vulnerabilities that passive header/cookie/TLS scans cannot find.

Steps for Shopify

  1. Shopify hosts the production environment; you cannot self-host a true staging server, but you can use a separate Shopify development store (free via Partner account) as your staging target.
  2. In your Shopify Partner Dashboard → Stores → 'Add store' → 'Development store' — populate it with your current theme and a realistic product/order dataset.
  3. Password-protect the development store: Online Store → Preferences → Password protection → Enable password.
  4. Point OWASP ZAP at the development store URL. In ZAP: Quick Start → Automated Scan → enter the development store URL, add your test-account credentials under 'Context → Authentication'.
  5. Run the active scan, review findings, then apply fixes in the development store theme or via app settings before pushing theme changes to production with 'Publish'.
  6. Repeat before every theme update, new app install, or custom Liquid/JavaScript change.
Official Shopify documentation ↗

What is passive scan only?

Passive security scans — like the checks run on your HTTP headers, TLS certificate, cookies, and email DNS records — are a great first step, but they can only see what your store broadcasts to any visitor. They cannot test whether your login form is vulnerable to brute-force attacks, whether your checkout accepts malicious input, or whether an authenticated user can access another customer's data. Active security testing (called DAST — Dynamic Application Security Testing) actually interacts with your live or staging site the way a real attacker would, probing for those deeper vulnerabilities. Tools like OWASP ZAP (free) or commercial equivalents send crafted requests to your store and report weaknesses that a passive scan will never find.

A security breach on an ecommerce store can expose customer payment data, personal information, and order history — leading to regulatory fines (GDPR, PCI DSS), chargebacks, loss of payment processor access, and permanent damage to customer trust. Many of the most damaging attack types — SQL injection, cross-site scripting (XSS), broken authentication, insecure direct object references — are invisible to passive scanning but are caught routinely by DAST tools. Running active tests before each release means you find and fix vulnerabilities before attackers do, protecting your revenue, your customers, and your brand reputation. Skipping this step is one of the top reasons stores appear in breach reports despite having "green" passive security scores.

See the complete Passive scan only guide for every platform and the full background.

Not sure if your Shopify store has this?

Run a free SEOLZ scan — we’ll find passive scan only and every other issue across your whole site.

Scan my site free

Fix passive scan only on another platform