Prima di tutto, se c'è un duplicato esatto - non ne ho trovato, quindi mi scuso se la risposta è già stata fornita.Protezione delle credenziali di accesso al database (MySQL) in un'applicazione Web (stack LAMP)
Presenterò il problema che sto affrontando, sperando di ottenere qualche intuizione o una semplice risposta "non possibile".
Come proteggere le credenziali del database in un'applicazione Web nel caso in cui il server in cui viene compromesso PHP? Supponiamo che nel caso di questo problema non si parli di hosting condiviso, VPS o altro, c'è solo una persona che ha accesso alla casella che memorizza le informazioni di MySQL.
Il server MySQL si trova in un'altra casella (remota) e consente le connessioni solo da un intervallo di indirizzi IP (associati alla casella PHP).
Come garantire che l'utente malintenzionato non sia in grado di ottenere i dettagli necessari per la stringa di connessione per MySQL? Supponiamo che l'utente abbia infranto il login di root della Linux box che esegue PHP.
Quali passi intraprenderei per fornire la massima sicurezza in termini di accesso alle informazioni necessarie per stabilire una connessione MySQL in questo caso?
Grazie per aver letto e commentato in anticipo.
Questo argomento è stato già trattato qui - http://stackoverflow.com/questions/3710511/best-way-to-connect-to-mysql-with-php-security – hafichuk
@hafichuk - il collegamento fornito suggerisce alcune parti di garantire l'accesso, con la migliore risposta crittografando il file con la password.Tuttavia, se qualcuno è una radice, nulla impedisce loro di modificare il codice PHP e di echeggiare le credenziali. Mi chiedo se qualcuno abbia un metodo migliore per stabilire la comunicazione tra server app e server db come la crittografia a chiave pubblica o simile in cui il server db è coinvolto nella negoziazione prima di consentire la connessione. – Furicane