2014-06-17 13 views
9

Sto valutando la sicurezza per la mia applicazione web. Poiché sto usando Spring nella mia applicazione web, vorrei sfruttare il framework Spring Security. Ho cercato più informazioni sulla sicurezza web e ho incontrato la community OWASP e la lista dei 10 migliori attacchi. Quindi la mia domanda è; sarebbe sufficiente configurare Spring Security per proteggere la mia applicazione? Quali sono tutte le minacce alla sicurezza di OWASP top 10 (2013) gestite da Spring Security Framework?OWASP primi dieci attacchi e Spring Security

+1

Primavera di sicurezza gestisce solo gli URL che fissano e ti dà un quadro di accesso, se il meccanismo di autenticazione sottostante è ancora debole, avrai ancora un potenziale violazione della sicurezza . Spring Security fornisce un meccanismo per forzare SSL sugli URL, ma è comunque necessario un certificato SSL.Quindi, in breve, Spring Security non è sufficiente per soddisfare l'OWASP top 10. –

risposta

6

Costruire applicazioni sicure è un compito impegnativo e non esiste un prodotto "proiettile d'argento" che renderebbe l'applicazione automaticamente sicura per voi. Pertanto il semplice utilizzo di Spring Security non significa automaticamente che la tua applicazione sia sicura! Spring Security è un ottimo strumento che aiuta con molti aspetti della creazione di applicazioni sicure, ma come con qualsiasi strumento è necessario sapere come usarlo correttamente.

Primavera di sicurezza può aiutare a risolvere almeno i seguenti aspetti OWASP TOP10:

  • A2-rotto autenticazione e la gestione della sessione - prevedendo meccanismi per l'autenticazione sicura ed efficiente e la gestione delle sessioni
  • A4 -Insecure Direct Object References - fornendo meccanismi di autorizzazione all'interno dell'applicazione
  • A6-Sensitive Exposure dati - modulo crypto di Primavera di sicurezza fornisce funzionalità di crittografia necessarie
  • Access Control A7-mancante Livello Funzione - fornendo i mezzi per l'autorizzazione a UI e lato server
  • A8-Cross-Site Request Forgery (CSRF) - fornendo supporto per generazione e convalida di token mitiganti attacchi CSRF
2

Si può provare HDIV che ha il supporto per più framework.

6

Si consiglia di utilizzare un'architettura di sicurezza a livelli. Voglio dire, è possibile creare un'applicazione sicura a mano ma è estremamente difficile da implementare. Alcune funzioni di sicurezza quali come autenticazione e controllo di accesso di base (livello URL o livello componente GUI) sono relativamente facili da implementare ma requisiti come sicurezza a livello di istanza (specialmente con database legacy), Sql Injection e XSS sono più difficili.

Si consiglia di utilizzare Spring Security e di implementare il più possibile le convalide personalizzate. In aggiunta a ciò, raccomando di utilizzare HDIV per aggiungere un ulteriore livello di sicurezza che potrebbe consentire a di evitare lo sfruttamento dei rischi non coperti dalle convalide personalizzate. In particolare le funzionalità offerte da HDIV sono:

  • A1- iniezione: per quanto riguarda i valori e gli URL parametri HTTP HDIV ridurre il rischio di questa vulnerabilità per solo i dati che provengono da campi di testo all'interno di forme, applicando le convalide di integrità (assicura che il valore ricevuto sia lo stesso generato sul lato server) per il resto dei dati che provengono dal lato client. Per i campi di testo inclusi nei moduli, HDIV offre convalide generiche (whitelist e lista nera) per evitare attacchi di iniezione.

  • A2-rotto autenticazione e la gestione della sessione: HDIV non offre funzionalità per questo rischio web.

  • A3-XSS: lo stesso di A1 ma in tal caso evitare i rischi XSS.

  • A4-insicura Oggetto Diretto Riferimenti: HDIV controlla tutti i dati generati ad lato server assicurare l'integrità dei dati e evitare questa vulnerabilità.

  • A5-Security configurazione errata: HDIV non include funzionalità specifiche per questo, ma non consente l'accesso alle risorse non inviati dal server in precedenza, evitando lo sfruttamento dei comportamenti imprevisti o l'accesso a risorse private.

  • A6-sensibili esposizione dei dati: HDIV offre funzionalità di riservatezza per nascondere i valori dei parametri HTTP.

  • A7-mancante Livello di funzione di controllo di accesso: grazie alle convalide integrità implementato da HDIV, evita lo sfruttamento di questa vulnerabilità e limitare l'utente ad eseguire azioni legali e il mantenimento del contratto originale (GUI o API) offerti dall'applicazione
    .

  • A8-Cross-Site Request Forgery (CSRF): HDIV aggiunge gettoni aleatorie a evitano questa vulnerabilità

  • A9-utilizzo di componenti con vulnerabilità note: HDIV non include funzionalità specifiche per questo ma grazie all'interazione le limitazioni applicate all'utente in molti casi non è possibile a sfruttare la vulnerabilità.

  • reindirizzamenti A10-Unvalidated e indietro: Questa vulnerabilità è principalmente legati alla manipolazione dei dati non modificabili o dati generati precedentemente lato server. HDIV controlla tutti i dati inviati dal server e non consente il reindirizzamento a siti Web dannosi .

Oltre a queste funzionalità per proteggere dalle prime dieci rischi web OWASP, HDIV genera anche registri correlati all'attività dannoso o attacchi contro il vostro sito web, tra cui tutte le informazioni circa l'attacco e il nome utente all'interno di siti web autenticati .

saluti,

Roberto Velasco (squadra HDIV)