# F5

### Plugin Netacea F5

L'integrazione con i load balancer F5 si basa sul modulo iRules LX.

Le '**iRules**' sono l'espressione generale per lo scripting nell'ambiente F5. Generalmente, vengono utilizzate per definire come le richieste devono essere bilanciate attraverso F5, con alcuni strumenti di sicurezza leggeri. I blocchi di codice sono separati in fasi della richiesta e gli script possono essere scritti in un linguaggio interamente specifico per F5. La documentazione per le iRules è disponibile [qui](https://clouddocs.f5.com/api/irules/).

'**iRules LX**' descrive un'estensione delle iRules aggiunta per consentire l'utilizzo di linguaggi di scripting meno specifici (ad esempio JavaScript). Un intero processo node viene eseguito in parallelo all'integrazione F5 sul server e le funzioni possono essere chiamate tramite Remote Procedural Call (RPC). La documentazione è disponibile [qui](https://clouddocs.f5.com/api/irules-lx/).

<figure><img src="https://2460428468-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMcNTU10K5f93vQq5fvkT%2Fuploads%2Fgit-blob-0a48335d485b03714ef091e388941ec7c1974a78%2Fimage%20(13)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

L'implementazione di un'integrazione F5 consiste in tre componenti principali. Abbiamo implementato moduli generali per l'interfacciamento con la piattaforma Netacea, un wrapper specifico per F5 per servire le RPC attraverso ILXServer (modulo fornito da F5) e una iRule che gestisce la logica di elaborazione delle richieste e le chiamate ai metodi remoti.

### Flusso delle richieste

Quando un visitatore accede per la prima volta a un sito protetto da Netacea/F5, il plugin interroga il servizio Netacea Protector API. Se il visitatore è riconosciuto come malevolo, il plugin esegue l'azione di mitigazione appropriata.

Un cookie contenente informazioni sulla validità di un utente viene posizionato sul dispositivo del client per ulteriori identificazioni e viene verificato periodicamente.\
\
Il plugin trasmette in streaming i dati di log relativi al visitatore e alla sessione al servizio Netacea Monitor Ingest, dove il Detection Engine di Netacea esegue ulteriori analisi per confermare se si tratta di un attore legittimo. Questa azione viene eseguita in modo asincrono, quindi non aggiunge latenza alla richiesta.\
\
Se in qualsiasi momento l'attività del visitatore diventa malevola, il servizio Netacea Protector API viene aggiornato e il plugin esegue la mitigazione appropriata.

Il diagramma seguente e le note di supporto spiegano come il traffico fluisce in questa implementazione (ad alto livello).\ <br>

<figure><img src="https://2460428468-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMcNTU10K5f93vQq5fvkT%2Fuploads%2Fgit-blob-a63f79567595a5623d6b823713aee6b14b8bba99%2FGitbook_diagrams_F5.jpg?alt=media" alt=""><figcaption></figcaption></figure>

1. Il visitatore richiede il sito protetto da Netacea/F5.
2. Il plugin Netacea F5 interroga il servizio Netacea Protector API per verificare se il visitatore è riconosciuto come malevolo o sicuro.
3. Una copia della richiesta web viene inviata come dati di log per l'analisi utilizzando la nostra threat intelligence collettiva, machine learning e analisi comportamentale per determinare se la richiesta è sicura.
4. I risultati dell'analisi vengono pubblicati affinché il plugin Netacea F5 possa leggerli e determinare quale strategia di mitigazione debba essere utilizzata per questo traffico.
5. Se le richieste sono benigne, vengono passate all'origin normalmente.
6. Se le richieste richiedono una mitigazione, viene eseguita l'azione appropriata e servita al client.
