Abbiamo questo sito web legacy che contiene un codice orrendo. Ho appena esaminato il modulo di accesso / codice e posso vedere query sql non igienizzate. Per esempio. in poche parole:
$email=$_POST['email'];
$password = $_POST['password'];
$query = "SELECT aes_decrypt(password, 'asdasdasd') AS password FROM users WHERE email='$email'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
if($password == $row['password']){
// set cookies and redirect user etc etc
}
else {
// error not correct login details
}
La mia domanda è, mi rendo conto che ciò è negativo a causa dell'iniezione SQL. E conosco le basi di ciò. Ad esempio, potresti mettere '; DROP ALL TABLES; --
e ciò "causerebbe il caos".
Si può fare qualcosa di più "interessante" o "utile" (al potenziale hacker)? Posso esportare un elenco di password o scaricare le tabelle con questo? O potresti riuscire ad accedere come utente del sito, ad esempio se conosci solo il loro indirizzo email?
Soprattutto per interesse, ma anche per una migliore comprensione (e in questo sta trovando migliori approcci per la codifica).