TL;DR: script monitoring
Script monitoring is the continuous observation of what JavaScript executes in a visitor's browser at runtime: which scripts load, what data they access, where they write, and what scripts they dynamically import. Unlike inventory or hash checks, script monitoring tracks behaviour so a compromised vendor script is caught not from a changed URL, but from changed actions.
- What PCI DSS requires: The continuous inventory and change detection PCI DSS 4.0.1 requires for every script on a payment page.
- Beyond allowlists: Static allowlists miss compromised trusted domains. Real detection means observing what the script actually reads and beacons, in session.
- What to look for: first-party sensor, payload diff not just hash, low false-positive rate on real traffic, QSA evidence exports.
Short on time? See cside's in-browser Magecart and skimmer blocking. It covers everything below in one deployment.
What Effective Third-Party Script Monitoring Requires
Quick answer: Effective third-party script monitoring goes beyond tracking which scripts are present. It detects changes in what scripts do at runtime: the data they access, the destinations they write to, the dynamic imports they load. A supply-chain compromise often produces a new hash from a trusted origin; only behavioural monitoring catches it.
OWASP's Top 10 2021 lists Software and Data Integrity Failures, which covers software supply chain attacks, as one of the top three web application risks. The five capabilities that matter specifically for third-party script monitoring are:

How a supply-chain compromise reaches the browser:
- Attacker compromises the vendor's CDN infrastructure and modifies a script thousands of sites load, for example
cdn.vendor.com/analytics.js. The merchant never touched the code. - The modified file ships as a new file with a new, valid hash from the trusted origin. CSP passes it (the origin is authorised). SRI / hash-rotation monitoring passes it (a new hash from a familiar vendor is expected). The WAF / CDN passes it (valid TLS, legitimate delivery). Identity checks see a trusted origin, they do not see behaviour.
- The script runs in the visitor's browser on the checkout / payment form and reads form fields it never read before.
- It POSTs the stolen card data to a new network destination, the attacker's exfil endpoint, that the baseline never included.
- Only runtime behavioural monitoring catches it. A cside runtime sensor flags the deviation (a new form-field read plus a new outbound destination) in the first real session where the compromised version runs. Identity and hash checks cannot, because the script is authorised but compromised.

Static inventory vs the runtime dependency tree:
| View | What it contains |
|---|---|
| Static, what the page declares | Three declared script tags in the page HTML at load: analytics.js, tag-manager.js, and cdn-vendor[.]example/widget.js. This is the whole inventory a scanner sees. |
| Runtime, what actually executes | cdn-vendor[.]example/widget.js loads fonts.css and vendor-core.js; vendor-core.js then dynamically imports import('cdn-metrics[.]example/p.js'). |
The dynamically imported payload, cdn-metrics[.]example/p.js, injected at runtime by vendor-core.js, never appears in the static inventory. Only a platform that monitors the runtime execution environment sees levels two and three of the dependency tree, which is where supply-chain payloads hide.
Vendor relationship mapping. The platform should enumerate not just which scripts are present but which vendor delivers each script, through which infrastructure, and which other scripts each script loads dynamically. A supply-chain attack often propagates through a dependency tree.
Behavioural baselining per script. When vendor X's analytics script is compromised, the new version may have the same URL and a new legitimate-looking hash, but it will read payment form fields or write to a new network destination. Detecting this requires a behavioural baseline, not just an identity baseline.
Dynamic import detection. Scripts that load other scripts at runtime are the most common supply-chain propagation vector. A platform that only monitors statically declared scripts in the HTML will miss dynamically loaded second-level dependencies.
Network destination monitoring. The ultimate signal of a successful supply-chain skimmer is a data transmission to a destination that the baseline did not include. Monitoring outbound network calls from each script (domain, method, payload shape) is the highest-confidence supply-chain detection signal.
Vendor risk scoring. Not all vendors carry the same supply-chain risk. A platform that assigns and continuously updates vendor risk scores based on observed behaviour, delivery infrastructure security, and historical compromise patterns gives security teams a prioritised view of their third-party exposure surface.
The Platforms
cside
Best for: Security and engineering teams that need full visibility into the third-party JavaScript supply chain at runtime, with behavioural baselining, dynamic import detection, and forensic-grade payload archival.
cside adds one script to your site, monitors what every third-party script does in real user sessions, and downloads each script to its own infrastructure for server-side analysis. Because the core analysis happens off the page, it stays invisible to attackers: there is no in-browser trap or hook for them to study, disable, or route around. cside builds a behavioural baseline for each script, tracking DOM reads, event handler attachments, network writes, and dynamic imports, and flags the deviation from that baseline in the first real user session where a compromised version runs.
Coverage is 100% of real user sessions with no sampling, which matters most for conditional attacks: a payload served only to one geo, one device class, or logged-in users. Dynamic import detection reaches the second and third levels of the dependency tree, the most common propagation path for supply-chain attacks, and every payload is preserved in an immutable archive so incident response and QSA auditors get the actual attack code rather than a behavioural log. The same engine helps teams meet PCI DSS 4.0.1 requirements 6.4.3 and 11.6.1, plus HIPAA, GDPR, and CPRA. Pricing is public and there is a free tier. This runtime approach is the same model behind real-time browser attack visibility tools and the broader client-side security category.
In the 2026 Globee® Cybersecurity Awards, independent judges named cside the Gold Globee® Award winner (Best of Category) for Client-Side Security; Jscrambler received Silver. See the head-to-head cside vs Jscrambler breakdown.

Jscrambler
Best for: Development teams that want to protect their own first-party JavaScript from tampering alongside monitoring third-party scripts.
Jscrambler began in JavaScript obfuscation, transforming first-party code to make it harder to reverse-engineer, and added its Webpage Integrity monitoring layer later. For teams that also need to protect proprietary in-browser logic, licensing enforcement, or algorithms, the combined portfolio is a genuine draw, and the cside vs Jscrambler breakdown covers that overlap in detail.
On the supply-chain side, the monitoring is trap-based: Jscrambler injects decoy objects and monitoring code into your pages and waits for a malicious script to interact with them after it has already loaded. Those traps run in the browser, where a motivated attacker can see them, ignore the decoys, or block the callback endpoint. Because Jscrambler does not track script contents, it cannot show you the payload after an incident, which limits forensics. cside runs its analysis server-side where attackers cannot see it, and archives the actual malicious code for review. Jscrambler received the Silver Globee® Award to cside's Gold in the 2026 Client-Side Security category.
Source Defense
Best for: Enterprise merchants that want third-party scripts contained through client-side sandboxing and isolation.
Source Defense, founded in 2014, secures third-party scripts two ways. "Source Defense Detect" is a crawler that mimics a visitor and fetches the scripts a page loads; because a crawler is only one context (location, device, time), it cannot capture the exact payload a real visitor receives, and an attacker can serve a clean script whenever the request looks like it comes from a cloud provider. "Source Defense Protect" is a JavaScript agent that builds a client-side sandbox to restrict what a script can reach on the page.
The sandbox idea is sound, but it runs in the same browser environment as the attacker, so a malicious script already executing can override core functions like fetch and cut off the agent's own alerts. The cside vs Source Defense breakdown also notes up to 100ms of added latency and the trigger-based blind spot where anything that does not fire is assumed good. Like other agent-based tools, Source Defense cannot show you the script contents, which limits forensics. cside analyses each script server-side before it is trusted, keeps 100% session coverage with no sampling, and preserves the raw payload as evidence.
DomDog
Best for: Teams that want a focused, low-cost tool aimed squarely at PCI DSS 6.4.3 and 11.6.1, with transparent pricing.
DomDog is tailor-made for PCI DSS 4.0.1 requirements 6.4.3 and 11.6.1 and, unusually for this space, publishes its pricing openly, starting at $999 per year, similar to cside. Setup is a single script in the header tag. It collects the scripts running on your pages, shows them in a dashboard, and asks you to review and allow- or block-list them, backed by a secondary Content Security Policy (CSP) layer.
That design is a JavaScript "agent" that does not sit in the flow of script delivery, so a stored XSS script that turns malicious later can go undetected, and the CSP layer only trusts a script's source, not the code served: it would not catch a source that keeps its domain but changes its content, as in the Polyfill attack. The cside vs DomDog breakdown also could not find a SOC 2 or PCI DSS certification for DomDog. cside sits in the delivery path, downloads and analyses the actual payload server-side, archives it, and covers frameworks beyond PCI including HIPAA, GDPR, and CPRA.
Feroot Security
Best for: Compliance-driven teams that want a JavaScript-agent behavioural monitor for PCI DSS script visibility.
Feroot, founded in 2017, splits its offering into two products. "PageGuard" deploys permissions and an allow-list where you pre-approve which scripts may run on which pages, overwriting core JavaScript to enforce the policy. Because an allow-list only checks a script's source, not the code served, the cside vs Feroot breakdown notes PageGuard would not have caught the Polyfill attack, where a trusted domain changed hands and started serving new code. "Inspector" deploys synthetic honeypot users to simulate real behaviour; it is effectively a scanner that runs periodic checks, and a crawler can be evaded by serving the malicious script only to residential IP addresses.
Feroot's agents flag behavioural anomalies after scripts have loaded and sample only a fraction of sessions, so a payload served to one geo, one device class, or logged-in users can sit in the unsampled majority indefinitely. cside downloads every script for server-side analysis in real time across 100% of sessions with no sampling, and archives every payload for forensics and PCI evidence.
Comparison at a Glance
| Platform | Behavioural baselining | Dynamic import detection | Network destination monitoring | Vendor risk scoring | Deobfuscated evidence |
|---|---|---|---|---|---|
| cside | Yes | Yes | Yes | Partial | Yes |
| Jscrambler | Partial | Not documented in this comparison | Not documented in this comparison | No | No |
| Source Defense | Sandboxing | Not documented in this comparison | Not documented in this comparison | Not documented in this comparison | No |
| DomDog | DOM-only | No | No | No | No |
| Feroot | Limited | No | Not documented in this comparison | No | No |
How to Choose
Quick answer: Do not start from a product name. Decide your primary control objective, then require the capabilities it depends on. Score every tool in the comparison table against the same checklist and let the one that meets all of your must-haves select itself.
Use this checklist. The criteria that separate a real supply-chain control from an inventory dashboard are the ones a compromised, obfuscated payload cannot slip past:
- Behavioural baselining in live sessions. The tool learns what each script normally does (DOM reads, event handlers, network writes) and flags the deviation, rather than only checking a script's identity or hash.
- 100% real-user session coverage, no sampling. Conditional attacks serve the malicious payload only to one geo, device class, or logged-in users. Anything less than full coverage can leave that payload in the unsampled majority indefinitely.
- Dynamic import tracing. Detection reaches the second and third levels of the dependency tree, scripts loaded by scripts, which is the most common supply-chain propagation path.
- Network-destination monitoring. Outbound calls per script (domain, method, payload shape) are tracked, so exfiltration to a new destination is caught even when the script's origin is authorised.
- Server-side payload analysis that attackers cannot fingerprint or evade. The core detection runs off the page, so there are no in-browser traps, hooks, or agents an attacker can see, disable, or override.
- Deobfuscated payload archival for forensics. The actual malicious code is captured and preserved in an immutable record, not just a behavioural change log, so incident response and a QSA get the real evidence.
- QSA-grade PCI DSS 6.4.3 and 11.6.1 evidence, ideally alongside HIPAA, GDPR, and CPRA, so one control serves multiple compliance frameworks.
- Works on any CDN with a single script and no allow-list maintenance, avoiding per-script rule writing and vendor lock-in as your integrations change.
- Transparent pricing and a free tier, so you can validate the coverage on your own traffic before committing budget.
Weight the checklist toward your primary objective, then read the comparison table above and pick the tool that satisfies every must-have. For the related class of skimming attacks, see our roundup of Magecart prevention client-side security platforms.
Try cside before you buy. cside has a free plan, so you can sign up, deploy, and explore the platform yourself, with no sales calls or procurement process. And our support team is one message away whenever you need a hand.









