Qualcuno potrebbe indicarmi una buona guida per principianti sull'esecuzione in sicurezza di query SQL formate in parte dall'input dell'utente? Sto usando Java, ma una guida neutra per la lingua va bene.Come devo disinfettare l'input del database in Java?
il comportamento desiderato è che se qualcuno nel qualcosa di simile GUI
very nice;) DROP TABLE FOO;
La banca dati dovrebbe trattarlo come una stringa letterale e conservarlo in modo sicuro senza far cadere tutte le tabelle.
Questo è esattamente il tipo di attacco che le dichiarazioni preparate sono destinate a proteggere contro. Sfuggirà il; – danieltalsky
Tecnicamente l'interfaccia PreparedStatement non lo garantisce. Anche se il tuo autista fa qualcosa di diverso, trova un nuovo fornitore. –
@daniel - Dovrò provarlo e vedere di persona. Che io sia corretto o meno, non sei d'accordo che la validazione lato server sia ancora una buona idea? – duffymo