Pular para o conteúdo

Capacidades de Defesa do Lado do Cliente

O F5 Distributed Cloud Client-Side Defense (CSD) protege aplicações web contra ataques do lado do cliente monitorando o comportamento do JavaScript diretamente no navegador. O balanceador de carga do F5 XC pode ser configurado para injetar o script de telemetria do CSD nas páginas entregues ao cliente. Esse script observa toda a atividade JavaScript — quais scripts são carregados, quais campos de formulário eles leem e quais conexões de rede estabelecem. Os dados de telemetria são enviados à plataforma F5 XC, onde modelos de aprendizado de máquina analisam o comportamento dos scripts, atribuem pontuações de risco e sinalizam anomalias. As equipes de segurança revisam as detecções no console do CSD e tomam ação permitindo ou mitigando domínios de scripts.

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

O CSD monitora três categorias de comportamento do lado do navegador:

SinalO que o CSD ObservaExemplo
Leituras de campos de formulárioQuais scripts acessam quais campos input presentes no DOM da página no momento do carregamentomain.js lendo o campo password em /login
Inventário de scriptsTodos os JavaScript de primeira e terceira partes carregados em cada página, rastreados por domínio de origemUma nova tag <script> carregando de cdn.jsdelivr.net aparecendo na página de login
Interações de redeDomínios envolvidos na atividade de rede dos scripts — inclui tanto domínios de origem do carregamento de scripts quanto domínios de destino de fetch/XHRScripts originados de esm.sh e alvos de exfiltração de dados como www.httpbin.org aparecendo nos domínios detectados
FuncionalidadeDescriçãoLocalização no Console
Pontuação de risco de scriptsClassificação automática: Sem Risco, Baixo Risco, Alto RiscoLista de Scripts → coluna Nível de Risco
Sensibilidade de campos de formulárioClassifica automaticamente campos como Sensíveis (pelo sistema) com base no tipo e nome do campoVisualização de Campos de Formulário → coluna Análise
Linha do tempo de comportamentoExibe o nível de risco, domínio de origem e tipo do script ao longo do tempoDetalhe do script → Visão Geral → Comportamentos ao Longo do Tempo
Atribuição de usuários afetadosRastreia usuários impactados por IP, geolocalização, navegador e dispositivoDetalhe do script → aba Usuários Afetados
Lista de permissão de domíniosMarcar domínios de scripts confiáveis como permitidosDashboard → linha do domínio → Adicionar à Lista de Permissão
Lista de mitigação de domíniosBloquear chamadas de rede e leituras de campos de formulário de domínios de scripts específicos, impedindo a exfiltração de dadosDashboard → linha do domínio → Adicionar à Lista de Mitigação
Configuração de alertasNotificações para novos domínios, mudanças de risco e comportamentos suspeitosSeção de Notificações
Justificativa de scriptAdicionar notas explicando por que um script está autorizado (conformidade com PCI DSS)Detalhe do script → campo Justificativa
Rastreamento de transaçõesContador mensal de eventos de telemetria confirmando que o CSD está ativoDashboard → card Transações Consumidas
Filtros de tempo e localizaçãoFiltrar todas as visualizações por intervalo de tempo (24h, 7d, 30d) e localizaçãoControles de filtro na barra superior

Entender o que o CSD não monitora é fundamental para definir expectativas precisas em demonstrações:

LimitaçãoDetalhesVerificado
Campos criados dinamicamenteO CSD rastreia campos input presentes no DOM no momento do carregamento da página. Campos injetados por JavaScript após o carregamento não são monitorados. Um <input> criado dinamicamente e lido por um script não aparece na visualização de Campos de Formulário.Sim — campo ausente em /formFields após 10 minutos de espera
Ofuscação no nível do códigoO CSD não sinaliza técnicas de execução dinâmica de código ou padrões de ofuscação como sinais de detecção separados. Coletores ofuscados produzem o mesmo nível de risco que os não ofuscados — o CSD rastreia metadados comportamentais, não padrões de código-fonte.Sim — “Alto Risco” idêntico para ambas as técnicas
Campos de formulários sobrepostosO CSD rastreia apenas campos de formulário presentes no DOM original no momento do carregamento da página. Formulários sobrepostos injetados por JavaScript (uma técnica comum de skimming digital) não são rastreados — apenas leituras dos campos originais são detectadas.Sim — campos sobrepostos ausentes em /formFields após 10 minutos de espera
Comportamento do contador do DashboardAs contagens resumidas “Encontrado & Mitigado” e “Encontrado & Permitido” só mudam após um administrador adicionar explicitamente um domínio à lista de mitigação ou permissão. As contagens “Ação Necessária” e “Total Encontrado” são atualizadas automaticamente quando novos domínios são detectados.Sim — “Encontrado & Permitido” mudou de 0 para 1 somente após POST em /allowed_domains

O CSD aborda diretamente dois requisitos do PCI DSS v4.0 para segurança de páginas de pagamento:

Requisito PCI DSSO que ExigeComo o CSD Atende
6.4.3 — Gerenciamento de scripts em páginas de pagamentoManter um inventário de todos os scripts, fornecer autorização e justificativa por escrito para cada um e verificar a integridade dos scriptsA Lista de Scripts fornece o inventário completo; o campo Justificativa documenta a autorização; a linha do tempo de comportamento rastreia as alterações
11.6.1 — Detecção de adulteração em páginas de pagamentoDetectar modificações não autorizadas em cabeçalhos HTTP e no conteúdo da página de pagamentoA telemetria do CSD detecta novas injeções de scripts, leituras não autorizadas de campos de formulário e novos domínios de rede — alertando sobre mudanças no comportamento da página

A tabela a seguir mapeia categorias comuns de ataques do lado do cliente aos sinais de detecção do CSD que seriam ativados durante cada tipo de ataque. Os tipos de ataque marcados com * são confirmados pela documentação oficial da F5. Os tipos não marcados são inferidos com base nas categorias de sinais de detecção do CSD e podem não ser explicitamente declarados pela F5.

Categoria de AtaqueDescriçãoLeituras de CamposInjeção de ScriptRede
Formjacking *Script malicioso lê valores de campos de formulário e os exfiltraSimSim
Skimming digital *Injeta formulários sobrepostos ou scripts para capturar dados de pagamentoSimSimSim
Ataque à cadeia de fornecimento *Biblioteca de terceiros comprometida carrega código maliciosoSimSim
Exfiltração de dados *Lê dados sensíveis e os envia a domínios externosSimSim
Injeção de script *Insere tags <script> não autorizadas na páginaSimSim
Cryptojacking *Injeta scripts de mineração de criptomoedasSimSim
Manipulação de DOMInjeta ou modifica elementos da página para enganar usuáriosSim
Man-in-the-BrowserIntercepta dados de formulário dentro da sessão do navegador — consulte OWASP e MITRE T1185SimSim
ClickjackingSobrepõe frames invisíveis para sequestrar cliques do usuário — consulte OWASPSim
Persistência de web skimmerReinjecta scripts de skimmer entre navegações de página — consulte Pesquisa Magecart da SansecSimSim