proteggere determinati dati sul mio server web

1

Ho sviluppato un sito Web in cui le persone aggiungono i loro dati sensibili. Non carte di credito, ma diciamo che condividono cose su di loro che sono private e non sarebbe bello se altre persone vedessero quelle informazioni. Alcuni dati sono privati, altri pubblici.

Voglio mantenere privati i dati privati come in ... Se qualcuno irrompe nel server, voglio che siano in grado di estrarre versioni crittografate, piuttosto che testo piano sugli account dei miei utenti.

Quello che ho pensato finora è il seguente. 1. Certificato SSL (in realtà non protegge i dati sul server, ma la connessione) 2. i dati che sono privati di mercato per essere crittografati da una serie di algoritmi (immagino che sarebbe pesante sul server) 3. crittografare le funzioni PHP che codifica / decodifica i dati.

Non sono molto preparato per questo, quindi mi piacerebbe sapere cosa è considerata la migliore pratica per la mia situazione? Sto super complicando il processo?

Il fatto è che l'app non genera entrate, quindi non posso permettermi un amministratore di sistema, né sono in grado di occuparmi del traffico 24/7. Sto cercando una soluzione che si prenderà cura da sola. Inoltre non posso spendere soldi per software sofisticati che farebbero il lavoro. Sto cercando di riavviare l'app il più possibile. Posso permettermi il certificato SSL, ma non un Zend Guard da 600 $, per esempio.

PS. Ho usato codeigniter finora per scrivere il mio codice php se questo è importante.

Suggerimenti?

    
posta Ando 12.04.2013 - 19:48
fonte

2 risposte

2

Molto spesso, queste intrusioni si verificano attraverso l'applicazione stessa. Se la crittografia è trasparente per l'app o per la parte dell'app attraverso cui si verifica l'intrusione (ovvero la crittografia avviene in una funzione chiamata per qualsiasi dato di input / output), non aggiunge alcuna sicurezza.

Allo stesso tempo, se le funzioni di crittografia vengono utilizzate solo esplicitamente in poche pagine, quindi, l'iniezione SQL in un altro modulo otterrà solo i dati crittografati dell'utente malintenzionato.

In sintesi, limita l'accessibilità dei dati non crittografati in tutta l'app e controlla le restanti poche posizioni per almeno l'iniezione SQL (usa le istruzioni preparate). Non c'è bisogno di crittografare il PHP stesso - non aiuterà molto contro un aggressore determinato.

    
risposta data 13.04.2013 - 07:51
fonte
1

codeigniter ha routine di crittografia che possono essere utilizzate per memorizzare informazioni sensibili. Va notato che la crittografia sta pianificando il fallimento. La radice del problema è la presenza di vulnerabilità nell'applicazione Web che consentono a un utente malintenzionato di accedere ai dati. SQL Injection, XSS e CSRF devono essere indirizzati per primi. È possibile che una semplice vulnerabilità XSS possa essere utilizzata per leggere informazioni sensibili in testo non crittografato, indipendentemente dall'uso della crittografia.

Assicurati di padroneggiare OWASP top 10 .

    
risposta data 12.04.2013 - 19:53
fonte

Leggi altre domande sui tag