
Envoyé par
binarygirl
Ce code ne doit pas être corrigé, il doit être refait. En cas d'incident (hacking), et sans parler des conséquences directes que ça entraîne, il peut y avoir un audit de la CNIL et des lourdes amendes à la clé pour négligence
Aurais-tu un code assez sécurisé ou ce que je fais ci-dessous est suffisant ?
Vu que cela a un lien direct avec le post original, je me permet d'intervenir et demander également conseil.
Pour ma part, je refais notre interface de gestion de l'association et je compte la mettre avec une très bonne sécurité vu que cette page est sur internet (même si elle n'est pas référencée pour les bots).
Je travaille sur 3 pages :
1. La page du formulaire
2. Le traitement du login (page de passage avec redirections suivant les cas)
3. La page affichée
Côté du mot de passe, il est encrypté et un champs varchar(45) dans la DB :
$sha1 = sha1($grain.$pw.$sel);
Il y a du grain de sel, c'est historique et avant le SH1 que j'ai implémenté avec PHP 7, mon ancien hash était déprécié (md5 je crois) 
La lecture du login et pw :
$pw = mysqli_real_escape_string($conn, htmlspecialchars($_POST['pw']));
idem pour le login, je vérifie si les POST ne sont pas vide
Dans la gestion du login:
1. je mets qu'il y a une erreur de login par défaut en début de page : $pw_passe='nok';
2. je lis ma DB pour la vérification du login, qui est sur 2 tables avec un INNER JOIN et si une concordance est trouvée, je redirige vers la page finale et $pw_passe='ok'; est mit en session, sinon retour au login.
Pour les pages :
1. je lis la session du pw_passe est présente et si oui,'ok' et si n'est pas correct -> redirection vers la page du login : en cas d'utilisation de l'url des pages sans login (idem si session expirée).
2. il y a également des droits sur les menus suivant qui se connecte (tout le monde n'a pas les mêmes droits suivant sa fonction au sein de l'association : ex. le secrétariat n'a pas accès aux pages comptables).
Aurait-il des chose à modifier ?
Si cette méthodologie est correct, @ Digger pourrait s'en inspirer
Partager