Caricamento file SQL-Injection quando database e server web si trovano su macchine diverse

2

Ho due server, uno per il database (mysql) e uno per il sito Web (apache) e c'è una iniezione sql sulla mia applicazione web. È ora possibile caricare una shell sul mio server web o il file_read, il file INTO, il dumpfile INTO, ecc. Funzionano solo sul server del database?

È possibile caricare una shell sul server web quando database e server web si trovano su macchine diverse?

    
posta Jim 27.12.2017 - 16:07
fonte

1 risposta

1

Tutto dipende da come si separano i dati dal codice dell'applicazione Web.

La risposta è per la maggior parte del CMS Web (Content Management System) che consente allo sviluppatore di inserire il codice direttamente nel CMS ed eseguire il codice al volo.

Se la tua applicazione web non utilizza CMS generato al volo e disinfetti il trasferimento dei dati dal database (che non restituisce alcun dato come script), la risposta è NO .

(aggiornamento)

L'attaccante può caricare QUALSIASI cosa vogliono sul server DATABASE una volta che hanno eseguito correttamente l'iniezione SQL. In teoria , l'iniezione SQL NON comprometterà l'integrità del server Web (non importa se il server Web risiede nello stesso server o meno).

TUTTAVIA, molti siti Web utilizzano CMS, che utilizzerà una sorta di database stesso. Una volta che il database CMS è stato compromesso, ciò influirà anche sul server Web, ecco perché ho menzionato la separazione dei dati.

vale a dire. Immagina di avere un server di database separato, il tuo server web leggerà i dati dal database e lo renderà direttamente, senza disinfettare. Così ora il database è compromesso dall'iniezione SQL e poiché non hai disinfettato i dati dal database, quando l'autore dell'attacco carica il codice shell compatibile con il server web nel database, il tuo server web eseguirà felicemente quel codice.

    
risposta data 27.12.2017 - 17:02
fonte

Leggi altre domande sui tag