Skip to content

Client-Side Defense Capabilities

F5 Distributed Cloud Client-Side Defense (CSD) adds browser-side telemetry to a protected application through the HTTP Load Balancer (HTTPS with HTTP redirect). The service reports script, domain, form-field, risk, and behavior data for security review. Administrators can place observed domains on allow or mitigate lists. Validate actual coverage and enforcement with current tenant evidence before making a customer claim.

The API and Terraform workflows create the same logical F5 Distributed Cloud architecture centered on one HTTP Load Balancer (HTTPS with HTTP redirect):

flowchart LR
    U[Browser] -->|HTTPS| L["HTTP Load Balancer (HTTPS with HTTP redirect)"]
    H[HTTP request] -->|301 redirect| L
    L -->|CSD telemetry insertion| U
    L --> P[Origin pool]
    P --> A["AWS: public_name ALB hostname"]
    P -. alternate .-> Z["Azure: public_ip address"]

The shared settings are namespace client-side-defense, domain client-side-defense.f5-sales-demo.com, public default VIP advertisement, HTTPS automatic certificate issuance with HTTP redirect, one default origin-pool route, and CSD insertion on all pages. The load balancer has the unsuffixed name client-side-defense; there is no separate HTTP resource. Protected-application execution uses HTTPS; HTTP is tested only for the 301 redirect.

Choose one ownership mode: API build or Terraform. The resulting traffic path is equivalent, but ownership is mutually exclusive.

Choose one ownership mode. Never run the API create/update/delete workflow against resources present in Terraform state.

flowchart LR
    A["Browser JS"] --> B["CSD Telemetry Script"]
    B --> C["F5 XC Platform"]
    C --> D["ML Analysis"]
    D --> E["CSD Dashboard"]

CSD telemetry in this lab provides evidence for these browser-side categories:

SignalWhat to ValidateExample
Form field interactionsForm-field entries associated with observed scriptsAn entry for an email or password input in /formFields
Script inventoryFirst-party and third-party scripts reported for the protected pageA CDN script URL in /scripts
Detected domainsDomains returned by /detected_domains for the active runA candidate CDN or synthetic external destination observed in the run
FeatureDescriptionConsole Location
Script risk scoringDisplays the risk classification returned for a scriptScript List → Risk Level column
Form field analysisDisplays available field analysis returned by the serviceForm Fields view → Analysis column
Behavior timelineDisplays reported script behavior over timeScript detail → Overview → Behaviors Over Time
Affected-user viewDisplays available impacted-user attributesScript detail → Affected Users tab
Domain allow listRecords trusted domains selected by an administratorDashboard → domain row → Add To Allow List
Domain mitigate listRecords domains selected for mitigationDashboard → domain row → Add To Mitigate List
Alert configurationConfigures available CSD notificationsNotifications section
Script justificationRecords administrator justification for an authorized scriptScript detail → Justification field
Transaction counterConfiguration/telemetry evidence that events were recorded; not enforcement proofDashboard → Transactions Consumed card
Time and location filtersFilter all views by time range (24h, 7d, 30d) and locationTop bar filter controls

The following are lab observations, not universal product limits. Revalidate them in the active tenant and protected application:

ObservationLab EvidenceInterpretation
Dynamically created fields were absentField absent from /formFields during the observation windowThe run did not produce form-field telemetry for that field; do not generalize beyond the tested build and traffic
Obfuscated and unobfuscated samples had the same displayed riskSame displayed classification in the tested runNo distinct obfuscation signal was observed in this lab
Overlay fields were absentOverlay field absent from /formFields during the observation windowThe run did not produce form-field telemetry for the injected overlay field
Dashboard summary counters changed after list mutationsCounter change observed after allow/mitigate API operationsCounters are configuration-state evidence, not proof that the browser enforced mitigation

CSD can provide evidence that supports assessment of PCI DSS v4.0 payment-page controls; it does not by itself establish compliance:

PCI DSS RequirementRelevant CSD EvidenceQualification
6.4.3 — Payment-page script managementScript inventory, approval status, and recorded justification available in the tenantConfirm completeness and operating procedures with the assessor
11.6.1 — Payment-page change/tamper detectionObserved script, domain, and behavior changesValidate alerting, response, and coverage against the customer’s implementation

The following table maps common client-side attack scenarios to lab signals relevant for validation. Scenarios marked with * are described in F5 product material. Unmarked mappings are scenario guidance, not confirmed F5 product claims. A Yes identifies a signal to test; it does not guarantee detection in every run.

Attack CategoryDescriptionField ReadsScript InjectionNetwork
Formjacking *Malicious script reads form field values and exfiltrates themYes—Yes
Digital skimming *Injects overlay forms or scripts to capture payment dataYesYesYes
Supply chain attack *Compromised third-party library loads malicious code—YesYes
Data exfiltration *Reads sensitive data and sends it to external domainsYes—Yes
Script injection *Inserts unauthorized <script> tags into the page—YesYes
Cryptojacking *Injects cryptocurrency mining scripts—YesYes
DOM manipulationInjects or modifies page elements to deceive users—Yes—
Man-in-the-BrowserIntercepts form data within the browser session — see OWASP and MITRE T1185Yes—Yes
ClickjackingOverlays invisible frames to hijack user clicks — see OWASP—Yes—
Web skimmer persistenceRe-injects skimmer scripts across page navigations — see Sansec Magecart Research—YesYes