Come proteggere le applicazioni web off-the-shelf?

14

Come esercizio, considera quanto segue:

Se stai affrontando la necessità di implementare applicazioni web off-the-shelf che non sei sicuro delle pratiche di codifica della sicurezza dei fornitori, quali tecniche o tecnologie potrebbero essere utili o distribuire per una certa protezione?

Supponendo quanto segue:

  • Non hai accesso al codice sorgente o non puoi facilmente influenzare le modifiche.
  • Non disponi di risorse, fondi o competenze per il test di penetrazione o la valutazione della vulnerabilità delle singole applicazioni, ma i fondi potrebbero essere disponibili per le tecnologie di protezione che potrebbero essere utilizzate in una vasta gamma di applicazioni web.
  • Non hai la possibilità di porre il veto sulla distribuzione delle applicazioni.

Aggiornamento: Pensa a SysAdmin piuttosto che a InfoSec professional, cioè hai qualche idea sulla sicurezza ma non è la tua cosa principale.

Quali sono gli approcci, le tecniche o le tecnologie che dovrebbero essere considerati a livello di SysAdmin senza che un team di sicurezza li inviti ad aiutarli a dormire meglio di notte?

    
posta Sim 19.05.2011 - 15:03
fonte

4 risposte

16

In primo luogo, le mie condoglianze. Sembra una vera e propria seccatura - doversi adattare alla sicurezza dopo il fatto con poco o nessun tempo di analisi, con un prodotto commerciale con scatola nera, nessun modo per ottenere correzioni e una mano forzata in termini di quale prodotto viene scelto e quando viene schierato è qualcosa come un incubo da nerd della sicurezza. Mi dispiace se questa è una situazione reale - non è una posizione in cui vorrei entrare, e il mio primo consiglio sarebbe capire come comportarsi politicamente per uscire da una situazione del genere. Questo parla a voce alta per un'organizzazione in cui la sicurezza svolge un ruolo secondario importante rispetto alle esigenze dell'IT. Ciò rappresenta sempre un caso negativo per buone pratiche di sicurezza e potrebbe essere il problema di sicurezza numero 1 della tua organizzazione.

In mancanza di un approccio organizzativo al cambio del gioco, ecco i miei pensieri di buon senso.

  1. Scopri quale autenticazione e controllo degli accessi fornisce il prodotto. Non è un test completo, basta metterlo in scena, testarlo, leggere quali documenti puoi ottenere e avere un'idea di come si combini. Ciò fornirà almeno alcuni indizi sui punti deboli che hanno una certa protezione.
  2. Firewall a livello di applicazione in grado di visualizzare e rilevare problemi nel traffico HTTP in entrata e in uscita. Sfida - questi non sono solitamente economici e richiedono tempo e sforzi per sintonizzarsi. È probabile che abbiano un numero inaccettabile di falsi positivi già pronti e che sia necessario del tempo per impostarlo correttamente. Pianifica un sacco di tempo per il testbed prima della distribuzione e ottieni una gestione del numero di casi d'uso validi che puoi per impostare scenari di test in modo che quando si distribuisca si rischi molto poco in termini di funzionalità operativa.
  3. Buone strategie di backup : individua il modo di implementare rapidamente e libera il minor numero possibile di dati nel processo. Da quello che hai detto, la nuova applicazione è inaffidabile, ma necessaria, quindi immagina che venga hackerata e trovi un modo per riprendersi in modo che il tempo di inattività sia minimo con il minimo impatto possibile per la missione della tua azienda.
  4. Isolalo. Non mettere questa app non affidabile su una macchina che contiene anche sistemi ben controllati. Allo stesso modo, mantieni i dati un po 'isolati, se possibile, e usa una sorta di meccanismo di trasferimento fuori banda se hai unito questi dati con altri dati aziendali. Quando devi fare qualcosa del genere, considera anche che i dati potrebbero essere corrotti e creare meccanismi di protezione lì. Se è costruito su sistemi di controllo accessi utilizzati da altre aree dell'azienda, assicurati che l'app Web abbia il proprio account per le funzioni di ricerca privilegi e che questo account sia mantenuto al minimo delle funzionalità senza modifiche / modifica delle autorizzazioni. Inoltre, registra tutto ciò che accade dove questo sistema tocca un altro sistema in modo da avere un buon record.
  5. Costruisci la tua base di conoscenze lentamente e con sicurezza. Riesco a vedere un'azienda impegnata in una revisione della sicurezza se la sicurezza non è una priorità elevata per loro, ma nessuno sembra obiettare agli amministratori che apprendono di più sul sistema come vanno. Inizia in modo piccolo ed economico con la rete a strascico e poi vedi cosa puoi fare in termini di assistenza gratuita da parte della società che fornisce il prodotto. Alcune aziende saranno felici per il feedback dei clienti gratuiti e la diagnostica dei problemi di sicurezza. Sono riuscito a fare una discreta quantità di supporto tecnico gratuito semplicemente essendo affascinante, assertivo e non giudicante.

Questi sono i miei pensieri. La mia premessa di base è: considera questa cosa come un buco potenzialmente pericoloso nel tuo sistema e fai tutto il possibile per proteggere il sistema, mantenere tutte le funzionalità funzionanti e sviluppare sufficienti meccanismi di conoscenza e protezione che puoi finalmente migliorare la tua fiducia nel prodotto. / p>     

risposta data 19.05.2011 - 16:22
fonte
7

Penso che l'azione più importante che puoi fare sia espandere / aumentare le capacità di monitoraggio e osservazione.

Se sai o sospetti esistano vulnerabilità prive di controlli per prevenire lo sfruttamento, allora quello che vuoi veramente è imparare il prima possibile se si è verificato qualcosa di brutto.

Diventa bravo a registrare. Pianifica di passare il tempo a esaminare i registri. Quanto più familiarmente si diventa con il comportamento dei sistemi coinvolti tanto più rapidamente è possibile identificare attività strane - e il tuo cervello è l'ultimo modello di abbinamento. (btw, questo è buono in ogni caso data la convinzione che tutte le tecniche / strumenti / prodotti di prevenzione falliscono a un certo punto)

Puoi iniziare a buon mercato sfruttando i popolari strumenti open source:

  • ModSec (già citato) funziona alla grande - controlla il libro di Ivan Ristic (autore di modsec) link . Ivan descrive ModSec come "Altre volte lo chiamerò uno strumento di rilevamento delle intrusioni HTTP, perché penso che quel nome descriva meglio cosa fa ModSecurity." Ci vorrà del tempo per sintonizzare ModSec e acquisire competenze, ma può fare molto per dare la visibilità di cui hai bisogno.
  • OSSEC per HIDS. È anche possibile configurare OSSEC per l'avviso sugli eventi ModSec.
  • Archivia i record del flusso di lavoro per aiutarti con il triage / analisi forense se necessario. Puoi esaminare strumenti di analisi del comportamento della rete gratuiti come FlowMatrix
  • Come accennato, la segmentazione della rete per impedire a un utente malintenzionato di spostarsi lateralmente è intelligente.

Fondamentalmente, monitora attivamente le cattive attività. Altrimenti potresti non sapere mai se i sistemi sono compromessi. Rendere consapevoli gli imprenditori del numero di attacchi (derivati dal monitoraggio) può aiutarti a guadagnare anche il budget.

    
risposta data 19.05.2011 - 18:26
fonte
3

Se devi proteggere ciecamente un'app Web, può essere utile un Firewall di applicazioni Web (ad esempio mod_security su Apache).

Sfortunatamente, a meno che non si tratti di un sistema centrale critico che si occupa di transazioni finanziarie, probabilmente non verrebbe sollevato come problema anche in un audit. Sono con Iszi - incrocia gli occhi, le dita, ecc.

    
risposta data 19.05.2011 - 15:53
fonte
2

È possibile attendere fino a quando si verifica una violazione dei dati molto ampia e comunicare ai proprietari dell'azienda che l'unico modo per proteggere le proprie applicazioni Web consiste nell'applicare standard di implementazione delle applicazioni sicuri che coprono pacchetti / componenti software di terze parti, contrib e outsourcing.

Sì, l'integrazione di ModSecurity con OSSEC, con l'integrazione aggiuntiva con un SIEM come OSSIM, è un'ottima posizione di partenza. Ma questo non è il gioco finale: dovrai fare molto di più.

OWASP AppSensor è una possibile soluzione ad alcuni dei problemi che ModSecurity non è in grado di gestire, come l'autenticazione e l'autorizzazione nella sicurezza delle applicazioni Web.

Tuttavia, senza gli standard e le policy create da un esperto di sicurezza delle applicazioni per quanto riguarda l'utilizzo dei componenti software, ogni organizzazione di installazione di grandi dimensioni continuerà a subire violazioni dei dati. Il livello dell'applicazione è il più grande punto debole.

    
risposta data 20.05.2011 - 18:56
fonte

Leggi altre domande sui tag