Monitoraggio e filtraggio di dati in uscita arbitrari

1

Mi piacerebbe essere in grado non solo monitorare centralmente, ma anche filtrare qualsiasi dato organizzativo spostando i nostri edge router, indipendentemente del applicazione mittente e indipendentemente del protocollo / porta utilizzata dall'applicazione mittente.

Ad esempio, l'applicazione mittente potrebbe essere un client ssh / sftp, un browser (http / s), un client di posta elettronica (??) o anche un programma client / server basato su socket TCP scritto a mano.

Se i dati in uscita sembrano essere crittografati (diciamo, come nel caso di https / ssl, ssh / sftp), mi piacerebbe comunque essere in grado di decodificarlo tramite un pattern simile al MITM (come impiegato da un programma come Squid) e rifiutare o consentire il passaggio dei dati in base al contenuto decodificato.

Ad esempio, se un utente ha inviato un file di grandi dimensioni, vorrei poter estrarre e assemblare il file in una singola unità logica (dai pacchetti IP?) e quindi essere in grado di eseguire ulteriori controlli su questo file assemblato per decidere se consentire o meno di passare.

Dato un ambiente basato su Linux, quali strumenti e tecniche (FOSS) dovrei impiegare per raggiungere questo obiettivo? Sono nuovo in quest'area e non so come procedere ulteriormente. Da qui la domanda.

    
posta Harry 26.04.2012 - 17:46
fonte

3 risposte

3

Per prima cosa devi decidere come identificare questi dati - probabilmente questo sarà il problema più grande e non è necessariamente tecnico.

  • Hai intenzione di taggare tutti i documenti e i file con una valutazione? Questo funziona per le organizzazioni che taggano una singola porzione di dati, in quanto il gateway cerca quindi il tag e agisce di conseguenza.

  • Imposta una blacklist di dati da bloccare? Ad esempio, sequenze di 16 cifre possono essere bloccate in quanto potrebbero essere numeri di carte di credito. Otterrai falsi positivi, ma può funzionare in alcuni ambienti.

Se lo hai ordinato, l'aspetto del gateway è relativamente semplice: forza tutti i dispositivi a connettersi tramite un proxy che funge da endpoint SSL. Come hai affermato, questo è effettivamente un MITM. Molti proxy, incluso squid, ti consentono di prevenire o consentire il traffico in base a vari criteri, ma nello spazio FOSS potresti essere limitato nel livello di complessità possibile. Queste due opzioni dovrebbero funzionare comunque.

Potresti scoprire che provare a eseguire analisi approfondite dei flussi di pacchetti per poterlo fare in tempo reale potrebbe essere al di fuori della portata di FOSS (dai un'occhiata ai firewall di prossima generazione come Palo Alto per alcune opzioni qui)

    
risposta data 26.04.2012 - 18:02
fonte
3

Sembra che tu stia cercando soluzioni di Data Loss Prevention (DLP). Sebbene ci siano molti strumenti commerciali, ricordo che Google, Snort e alcune altre organizzazioni offrono funzionalità di DLP FOSS.

I fornitori di soluzioni DLP commerciali come Symantec (Vontu) e Websense offrono soluzioni complete. L'ultima volta che ho controllato, le soluzioni FOSS DLP erano ancora carenti in funzionalità / funzionalità rispetto alle soluzioni DLP commerciali.

HTH

Non sono a conoscenza di alcuna soluzione FOSS che fornisce tutte le funzionalità che stai cercando. Persino le soluzioni DLP commerciali non sono in grado di dare un'occhiata alle sessioni ssh (https è molto più semplice dato che puoi semplicemente utilizzare un'architettura proxy l7). La sfida sta costruendo regole significative. I dispositivi di rete basati su firme funzionano a l3 / l4 e non ricostruiscono i pacchetti in conversazioni. Anche in questo caso, i rivelatori di dati in movimento di sola rete sono limitati a vedere il traffico di testo in chiaro (con l'eccezione di un proxy L7 in linea per http / https / ftp) senza implementare anche una sorta di soluzione per endpoint.

Puoi spiegare un po 'più in dettaglio che tipo di dati stai cercando di proteggere? Forse una funzionalità DLP basata su rete FOSS data-in-motion ricca di funzionalità potrebbe non essere disponibile, ma potresti essere in grado di applicare la protezione ai dati stessi. In caso contrario, la sfida diventa protezione delle risorse informative senza un budget adeguato, il che significa quasi che i dati non meritano di essere protetti in primo luogo.

    
risposta data 26.04.2012 - 23:12
fonte
0

SSL Bump , da integrare in un proxy Squid, può decodificare le sessioni SSL in uscita, fatte salve alcune condizioni :

  • Un certificato CA specifico deve essere aggiunto al "trust store" dei client. SSL Bump funziona creando un certificato falso per il server di destinazione e facendo un attacco man-in-the-middle .
  • I browser client devono essere convinti di utilizzare il proxy. Questo può essere applicato a livello di rete, a seconda del livello di controllo che hai sui firewall e sui router.
  • Interrompe l'autenticazione del client basata su certificato. I certificati client sono rari sul Web, ma alcune banche emettono certificati ai loro clienti.
  • Gli utenti potranno vederlo. La maggior parte degli utenti umani tende a reagire male alla scoperta di tale filtraggio delle loro connessioni apparentemente "sicure". Faresti meglio ad avvertirli in modo proattivo. La trasparenza è una grande risorsa per le relazioni tra datore di lavoro e dipendenti.
risposta data 12.01.2013 - 17:52
fonte

Leggi altre domande sui tag