12-12-2010, 02:14 AM
Rien que ça :
Sans vouloir te décourager, il y a un gros travail de relecture à faire sur ton code...
(note pour plus tard : faire un tuto PHP sur le minimum de règle de sécurité à mettre en place)
Juste comme ça, la première règle de sécurité c'est "Never trust user data", autrement dit, ne jamais faire confiances aux données reçues du client, que ce soit en GET ou en POST, toujours les vérifier, les contrôler et les filtrer avant de les utiliser.
Ca c'est le meilleure moyen pour se faire pirater sa base de données :
if (!$_GET['username']) //No username entered
{
header("Location: battle1.php");
break;
}
C'est une ENORME faille de sécurité... ceci test que tu dois avoir un "username" dans l'url, sans doute celui de l'utilisateur en cours... il suffit donc de modifier l'url avec un autre username pour... et bien pour faire autre chose que ce qui était prévu...Sans vouloir te décourager, il y a un gros travail de relecture à faire sur ton code...
(note pour plus tard : faire un tuto PHP sur le minimum de règle de sécurité à mettre en place)
Juste comme ça, la première règle de sécurité c'est "Never trust user data", autrement dit, ne jamais faire confiances aux données reçues du client, que ce soit en GET ou en POST, toujours les vérifier, les contrôler et les filtrer avant de les utiliser.
Ca c'est le meilleure moyen pour se faire pirater sa base de données :
$db->execute("select * from `players` where `username`=?", array($_GET['username']));