DataSunrise Consegue la Certificazione AWS DevOps Competency per AWS DevSecOps e Monitoraggio, Logging e Performance

Analisi del Comportamento dell’Utente con l’Apprendimento Automatico

Analisi del Comportamento dell’Utente con l’Apprendimento Automatico

Introduzione

Nel 2023, il Rapporto DBIR ha scoperto che l’86% delle violazioni web si è verificato a causa di informazioni d’accesso rubate. Poiché prevenire gli attacchi rimane un aspetto fondamentale delle misure di sicurezza complessive, DataSunrise offre meccanismi avanzati per il monitoraggio del comportamento sospetto degli utenti del database.

I database spesso manifestano credenziali utente compromesse o sistemi infetti attraverso tentativi di elevare i privilegi o di accedere a database o schemi diversi, come ‘pg_catalog’. Una situazione comune si verifica quando un utente tenta di accedere al database da un indirizzo IP sconosciuto. Questo spesso indica un’attività sospetta, possibilmente dovuta a credenziali utente compromesse.

DataSunrise Task di Comportamento Sospetto dell’Utente utilizza strumenti di apprendimento automatico (ML) per monitorare il comportamento degli utenti e affrontare efficacemente i casi sospetti. L’approccio di apprendimento automatico consente una configurazione flessibile dello strumento senza la necessità di configurare manualmente set di IP consentiti o database e schemi autorizzati per utenti specifici, eliminando la necessità di impostare precisamente indirizzi IP o database a mano.

Audit dell’Attività del Database

Prima di discutere il monitoraggio del comportamento, dobbiamo notare come raccogliamo i dati per l’addestramento ML. DataSunrise ha uno strumento chiamato Audit che registra le attività. È possibile trovare i log in AuditTracce Transazionali.

I log di Audit di DataSunrise registrano i dati per tracciare come si comportano tipicamente gli utenti del database e possono anche aiutare a monitorare eventuali attività sospette.

I dati raccolti sono basati su testo e spesso troppo grandi da analizzare senza strumenti specifici per l’analisi dei dati. DataSunrise ha tutto ciò che Lei necessita per elaborare grandi quantità di dati e trarre conclusioni dagli insight forniti.

Per creare un task di Comportamento Sospetto dell’Utente, è necessario avere i dati di addestramento giusti dalle Tracce Transazionali. È necessario eseguire l’analisi del comportamento entro l’intervallo di tempo corretto.

Durante la prima esecuzione, il task addestra il modello statistico. Le esecuzioni successive comportano l’analisi delle Tracce Transazionali dalla fine dell’intervallo di addestramento fino alla fine delle Tracce Transazionali.

Strumenti ML per il Monitoraggio del Comportamento dell’Utente: Studio di Caso

Lo scenario è il seguente: L’azienda utilizza un’applicazione web con un database per gestire i dati dei clienti. L’azienda controllerà regolarmente qualsiasi attività insolita nelle tabelle del database, sia manualmente che ogni ora.

Ci sono tre passaggi principali per implementare il Task di Analisi del Comportamento Utente:

Passo 1: Creare una Regola di Audit per monitorare le query tramite la Porta del Proxy al database risorsa. Trovare un intervallo di tempo appropriato per l’addestramento basato sulle Tracce Transazionali attive delle Regole. Questo è un passaggio preliminare necessario per fornire il dataset di addestramento.

In una tipica configurazione DataSunrise, ci sono molteplici Regole di Audit e log delle Tracce Transazionali estese. Pertanto, l’utente può controllare che le Tracce Transazionali per il periodo di tempo scelto mostrino solo l’attività utente approvata.

Passo 2: Creare un Task di Comportamento Utente con un intervallo di tempo appropriato per l’addestramento. Configurare il Task per essere eseguito la prima volta per addestrare il modello statistico.

Passo 3: Eseguire alcune attività insolite utilizzando strumenti di terze parti come ‘psql’ o ‘DBeaver’. Quindi eseguire manualmente il task per l’analisi. Questo aiuta a garantire che la regola funzioni correttamente.

Figura 1 – Configurazione dello studio di caso. Sia l’host di Comportamento Normale che l’host di Attività Malware si connettono all’host DataSunrise (Firewall).

L’Host di Comportamento Normale (sul lato sinistro dell’immagine) contiene un’applicazione web. Questo host serve tipicamente come l’istanza server connessa al database tramite l’Host Firewall (al centro). Abbiamo installato DataSunrise sull’Host Firewall, e le sue Tracce Transazionali registrano le connessioni al database tramite la Porta Proxy di DataSunrise 5432.

Passo 1: Regola di Audit per Azioni Regolari

Per creare una regola di audit, prima, andare alla UI basata sul web di DataSunrise. Successivamente, cliccare su Audit, poi Regole. Infine, cliccare su +Aggiungi Regola se non è già presente.

Dovrebbe abilitare AuditObject nelle Impostazioni di SistemaParametri Addizionali. La Regola di Audit dovrebbe tracciare solo azioni utente approvate per l’addestramento. Gli utenti possono sempre verificarla successivamente nelle Tracce Transazionali.

Abilitare la regola appena creata. Le richieste al database dovrebbero apparire negli eventi della regola. Durante questo passaggio, analizziamo le Tracce Transazionali e selezioniamo l’intervallo di tempo degli eventi di attività normale da utilizzare per l’addestramento del Comportamento Sospetto dell’Utente.

Passo 2: Task di Comportamento Sospetto dell’Utente

Ora che abbiamo assicurato la presenza dei dati di addestramento e selezionato l’intervallo di tempo per l’addestramento, è tempo di creare un task di Rilevamento del Comportamento Sospetto dell’Utente. Per fare ciò, navigare su ConfigurazioneTask Periodici+Nuovo Task.

Dalla lista di Tipo di Task, selezionare Rilevamento Comportamento Sospetto dell’Utente. L’unica impostazione richiesta qui è definire l’intervallo degli eventi del dataset di addestramento. Inoltre, c’è un’opzione di Frequenza di Avvio per il task, ma nel nostro caso, dove eseguiamo il task manualmente al bisogno, possiamo lasciare la frequenza al default (Oraria).

Di seguito è riportata la configurazione per l’intervallo di tempo del nuovo Task di Comportamento Sospetto dell’Utente.

Figura 2 – Configurazione del task di Comportamento Sospetto dell’Utente (troncata).

Definiamo l’intervallo di tempo durante il quale si verificano solo attività autorizzate su tutti i Proxies dell’Istanza di Database. Queste attività sono quelle nella lista bianca, e abbiamo selezionato il tempo del primo e ultimo evento durante l’analisi nel Passaggio 1.

Per iniziare l’addestramento del modello statistico del Task, salvare le impostazioni. Questa azione La reindirizzerà alla sezione Task Periodici. Torni al Task di Comportamento Sospetto dell’Utente cliccando sul suo nome nell’elenco. Poi, prema ‘Esegui‘ per eseguire il task e verificarne lo stato.

Non ci dovrebbero essere errori. Durante la prima esecuzione del task, non rileva attività sospette poiché si concentra esclusivamente sull’addestramento del modello statistico. All’interno della finestra di dialogo del task durante l’esecuzione del task, l’utente può osservare l’avanzamento dell’addestramento nel messaggio di stato.

Figura 3 – Prima esecuzione del task di Comportamento Sospetto dell’Utente. Lo stato “Task completato con successo” è importante per l’analisi delle attività future

Questo conclude il Passo 2. Ora abbiamo la rete addestrata all’interno del task di Comportamento Sospetto dell’Utente e possiamo procedere effettivamente a registrare il rilevamento di comportamenti sospetti.

Passo 3: Attività Sospetta e Analisi

Un’attività sospetta nel nostro caso comporta query da un indirizzo IP inatteso (Host di Attività Malware) che accedono a tutti i campi di ‘pg_catalog.pg_enum’.

Per connettersi al database arbitrario dall’indirizzo IP sospetto dell’Host di Attività Malware, è stato utilizzato il comando ‘psql’ da quell’host:

/usr/pgsql-13/bin/psql -h 192.168.10.104 -p 5432 -U ubuser01 -d ubdb02
ubdb02=# select * from pg_catalog.pg_enum

Come risultato, appare un avviso di sessione singola nei risultati del task di Comportamento Sospetto dell’Utente:

Figura 4 – DataSunrise segnala la prima attività sospetta. L’immagine mostra l’allerta risultante dalla seconda esecuzione del task di Comportamento Sospetto dell’Utente. La sessione è già stata contrassegnata come ‘Sospetta’ dall’utente.

Si noti che se l’utente dell’Host di Attività Malware si connette al proxy utilizzando software come DBeaver o altri software di gestione database basati su UI, questa azione attiverà anche avvisi. DBeaver controlla automaticamente la struttura del database. Esegue interrogazioni su tabelle e schemi che non sono presenti nei dati di addestramento. Il sistema potrebbe segnalare come inattesa questa attività.

Figura 5 – Risultati del Task di Comportamento Sospetto dell’Utente per la connessione DBeaver dalla macchina host.

In questo scenario, query del database sono state effettuate due volte tramite il proxy DataSunrise dall’Host dell’Applicazione Web di Comportamento Normale. Successivamente, è stata stabilita una connessione al database utilizzando DBeaver da un indirizzo IP attendibile. Tuttavia, DBeaver ha proseguito interrogando tabelle e schemi insoliti (pg_catalog). Pertanto, abbiamo contrassegnato queste sessioni come sospette.

Il Task di Comportamento Sospetto dell’Utente può generare avvisi per tutti i proxy dell’istanza del database della regola di audit, o per Regole e Istanze se ce ne sono molte. È importante notare che nei Risultati (figura sopra), il numero di Porta del Database rappresenta la porta del server di database impostata nell’impostazione dell’istanza per la connessione a database protetti. Questo non è il Proxy Port di quella istanza.

Per verificare se tutti i Proxies dell’Istanza stanno generando avvisi di comportamento sospetto, gli utenti dovrebbero eseguire richieste sospette su tutte le porte proxy, assicurarsi che siano auditate, e rieseguire il Task di Comportamento Sospetto dell’Utente. Poi, cliccare sull’icona di aggiornamento nell’elenco dei risultati del task. Appena compaiono nuove query, cliccare sul ID della sessione per trovare il numero di porta del proxy.

Tutte le query e le righe interessate sono disponibili nei dettagli della sessione quando cliccato nella tabella dei Risultati del task. Si prega di fare riferimento alla figura sottostante per ulteriori dettagli.

Figura 6 – Strumenti ML per il Monitoraggio del Comportamento degli Utenti: Sessione sospetta generata da DBeaver. Si prega di notare che elenchiamo tutte le query e indichiamo l’IP e il numero di porta del Proxy come 0.0.0.0:5433.

Risultati del Caso

Possiamo identificare le sessioni sospette esaminando parametri di query insoliti come indirizzi IP o nomi di database. Questi parametri deviano dall’attività tipica vista durante l’addestramento nel Task di Comportamento Sospetto dell’Utente.

Le principali conclusioni del caso di test sono le seguenti:

  • Il modello statistico si concentra sull’analisi degli indirizzi IP, tabelle, schemi, ecc., all’interno delle query. Non considera il contenuto delle query stesse. Per esempio, il modello statistico addestrato su semplici query SELECT non segnalerà query SELECT complesse o query “SELECT tutto” alla stessa tabella come sospette. Questo perché provengono da indirizzi IP appropriati e dirette a database insoliti.
  • Le IstCamere delle Regole di Audit determinano i potenziali Proxies per contrassegnare le sessioni in entrata come sospette. È cruciale che il dataset di addestramento copra tutte le sessioni regolari ragionevoli per tutti i Proxies. Le sessioni Proxy sconosciute saranno contrassegnate come sospette.
  • Non c’è una configurazione specifica richiesta per addestrare il task di Comportamento Sospetto dell’Utente su una particolare Regola di Audit. Tutti i record transazionali nel set di addestramento audit sono utilizzati per addestrare la rete. Questi record aiutano anche a identificare nuovi eventi e inviarli al Task di Comportamento Sospetto dell’Utente per ulteriori indagini.

Risoluzione dei Problemi

Qui, ci sono alcuni punti da notare:

  • Utilizza JVMChecker per verificare se Java sta funzionando correttamente (localizzato in /opt/datasunrise/bin).
  • Sfrutta i log di Comportamento Utente per analizzare se l’esecuzione del task ha prodotto messaggi di errore. Il task di Comportamento Sospetto dell’Utente ha un file di log per i messaggi di errore. Può trovarlo sotto Impostazioni di Sistema in Registrazione & Log, poi Tipo di Log, e infine Rilevamento Comportamento Sospetto dell’Utente.
  • Ricorda di abilitare la proprietà avanzata ‘Audit Objects’ mentre il Task di Comportamento Utente viene eseguito per la prima volta.
  • Comprenda i Suoi dati. Il processo di addestramento richiede una quantità relativamente alta di dati nei log di audit. Analizzare la parte testuale delle richieste SQL è importante da notare. Ciò significa che non ci saranno allarmi per tabelle o colonne insolite in una richiesta SELECT qualora fosse stata effettuata al database corretto, dall’IP corretto, e dall’utente e applicazione corretti.
  • Quando esegue il task di Comportamento Utente per la prima volta, assicuri che il Audit Trail contenga solo attività nella lista bianca. Se necessario, l’utente può ricreare facilmente il Task di Comportamento Utente e riaddestrare il suo modello statistico.

Conclusione

Il task di Comportamento Sospetto dell’Utente basato su ML aiuta a monitorare l’accesso ai dati impostando regole per diversi utenti automaticamente, risparmiando tempo e sforzi, specialmente con grandi insiemi di dati. Il firewall del database di DataSunrise sfrutta efficacemente gli strumenti ML per il monitoraggio del comportamento degli utenti. Nonostante la complessità dei processi coinvolti, l’interfaccia utente basata sul web offre un’interfaccia intuitiva per la configurazione dei task e l’analisi delle sessioni in entrata.

Il task di Comportamento Sospetto dell’Utente permette di scansionare le Tracce Transazionali di DataSunrise per qualsiasi attività insolita dagli utenti attuali, aiutando a identificare potenziali violazioni di sicurezza. Può eseguire questa scansione regolarmente o manualmente. Questo strumento consente agli utenti di contrassegnare le sessioni come sospette o normali e apportare piccole modifiche per semplificare l’interfaccia.

In questo articolo abbiamo discusso brevemente l’impostazione del Task di Comportamento Sospetto dell’Utente. Non esiti a visitare il nostro sito web e richiedere una demo online per una discussione aggiuntiva sulle soluzioni di sicurezza per database di DataSunrise.

Successivo

Ulteriori Informazioni Sulla Struttura del Suo Database e Sulle Relazioni tra Tabelle

Ulteriori Informazioni Sulla Struttura del Suo Database e Sulle Relazioni tra Tabelle

Scopri di più

Ha bisogno del nostro team di supporto?

I nostri esperti saranno lieti di rispondere alle Sue domande.

Informazioni generali:
[email protected]
Servizio clienti e supporto tecnico:
support.datasunrise.com
Richieste di collaborazione e alleanza:
[email protected]