App e database Web sullo stesso server, quali sono i vantaggi della crittografia dei dati del database?

1

Se un'app Web e un database si trovano sullo stesso server, qual è il vantaggio in termini di sicurezza della crittografia dei dati del database? Ovviamente le password dovrebbero essere hash in entrambi i modi.

Suppongo che se un utente malintenzionato può iniettare codice SQL o server, sarebbe in grado di visualizzare i dati del database. Qualcuno potrebbe più precisamente delineare le implicazioni sulla sicurezza?

Modifica: per chiarire stavo parlando della crittografia dei dati. Il metodo di crittografia non è deterministico così enc (data1)! = Enc (data1)

    
posta Cyrus 06.02.2015 - 05:19
fonte

1 risposta

1

I professionisti:

  • La crittografia del database assicurerà che se i file del database dovessero essere trapelati, saranno inaccessibili dall'attaccante o da qualsiasi altra parte con cui sono condivisi (dato che l'utente malintenzionato non ha ottenuto anche la chiave / password / i privilegi dell'utente). Ciò significa che se il server viene rubato o se si salvano vecchi backup o se si ottengono i file del database, i dati dovrebbero rimanere riservati.

I contrari:

  • Esiste un sovraccarico delle prestazioni associato alla crittografia / decrittografia dei dati nel database. Questo dipende molto dal sistema di database che si sta utilizzando e dal tipo di crittografia. Può essere ascritto al fatto che ogni set di dati che viene interrogato dal database dovrebbe essere decrittografato per essere utilizzabile dall'applicazione web e allo stesso modo tutti i dati scritti nel database dovrebbero essere crittografati. Queste operazioni possono richiedere molto tempo, in particolare su set di dati di grandi dimensioni. Questo overhead delle prestazioni può essere trascurabile o significativo a seconda dell'uso e delle aspettative del database.

L'avvertenza:

  • La crittografia del database non protegge i dati in essa contenuti se il vettore di attacco è la tua app Web (come lo SQLi che hai menzionato). La tua applicazione web accede al database come utente privilegiato in grado di decodificare i dati nel database, quindi qualsiasi attacco eseguito tramite la tua applicazione web sarà in grado di accedere ai dati crittografati. Ciò significa che un determinato utente malintenzionato sarebbe comunque in grado di estrarre tutti i dati dal database tramite una vulnerabilità SQLi.
risposta data 06.02.2015 - 05:49
fonte

Leggi altre domande sui tag