Ultima modifica:
Ho da pochi giorni risolto questa challenge, e mi sono divertito particolarmente. Sebbene la challenge fosse più complessa e richiedesse più step per ottenere la flag, questa parte di analisi di codice mi è piaciuta.
Dunque vi sfido: dov'è la vulnerabilità in questo codice e come si potrebbe exploitarla?
Hint: l'obiettivo è arrivare ad una SQL injections
Dunque vi sfido: dov'è la vulnerabilità in questo codice e come si potrebbe exploitarla?
Hint: l'obiettivo è arrivare ad una SQL injections
PHP:
<?php require 'config.php';
class db extends Connection {
public function query($sql) {
$args = func_get_args();
unset($args[0]);
return parent::query(vsprintf($sql, $args));
}
}
$db = new db();
if (isset($_POST['pass'])) {
$pass = addslashes($_POST['pass']);
$db->query("SELECT * FROM users WHERE password=('$pass') AND username=('%s')", 'admin');
} else {
die(highlight_file(__FILE__,1));
}