Page protegée par un mot de pass
jjkd
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'aimerais savoir si ce code est vraiment sécurisé lorsqu'on l'utilise sur le net
en plus j'aimerais aussi savoir comment le faire sur une page
merci.
---------------------------------------------------------------------------
j'aimerais savoir si ce code est vraiment sécurisé lorsqu'on l'utilise sur le net
en plus j'aimerais aussi savoir comment le faire sur une page
merci.
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Page index.php</title> </head> <body> <p>Veuillez entrer le mot de passe pour obtenir les codes d'accès au serveur central de la NASA :</p> <form action="secret.php" method="post"> <p> <input type="password" name="mot_de_passe" /> <input type="submit" value="Valider" /> </p> </form> <p>Cette page est réservée au personnel de la NASA. Si vous ne travaillez pas à la NASA, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p> </body> </html>
---------------------------------------------------------------------------
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>page secret.php</title> </head> <body> <?php if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] == "kangourou") // Si le mot de passe est bon { // On affiche les codes ?> <h1>Voici les codes d'accès :</h1> <p><strong>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28- LLFV</strong></p> <p> Cette page est réservée au personnel de la NASA. N'oubliez pas de la visiter régulièrement car les codes d'accès sont changés toutes les semaines.<br /> La NASA vous remercie de votre visite. </p> <?php } else // Sinon, on affiche un message d'erreur { echo '<p>Mot de passe incorrect</p>'; } ?> </body> </html>
A voir également:
- Page protegée par un mot de pass
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
6 réponses
Bonjoour à tous;
@jeepee : Le MD5 est fortement déconseillé .. idem pour le SHA1 qui sont facilement contournables désormais.
A la place, on utilisera les fonctions php : password_hash et password_verify
@jeepee, @yg_be : Les accolades pour un IF sont utiles lorsqu'il y a plusieurs instructions à réaliser lorsque la condition se vérifie.
Par exemple
Mais, si une seule action elles ne sont pas requises
Mais pour éviter toute erreur... je conseille fortement de toujours utiliser les accolades.
@jjkd , si, comme tu le dis, les mots de passe sont changés régulièrement, dans ce cas, utilise une base de données... plutôt que de modifier le code source de la page à chaque fois que tu auras besoin de changer les identifiants
De plus, il serait bien d'utiliser un couple login/password plutôt que juste un password.
Sinon, des petits malins pourraient s'amuser à essayer de forcer l'accès à ta page en utilisant des scripts de "force brute" pour cracker le password.
Et pour finir, vu que tu débutes dans le monde php, voici quelques conseils à appliquer à tes codes :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
@jeepee : Le MD5 est fortement déconseillé .. idem pour le SHA1 qui sont facilement contournables désormais.
A la place, on utilisera les fonctions php : password_hash et password_verify
@jeepee, @yg_be : Les accolades pour un IF sont utiles lorsqu'il y a plusieurs instructions à réaliser lorsque la condition se vérifie.
Par exemple
if(condition){ echo "un truc"; echo "un autre truc"; }
Mais, si une seule action elles ne sont pas requises
if(condition) echo "truc machin";
Mais pour éviter toute erreur... je conseille fortement de toujours utiliser les accolades.
@jjkd , si, comme tu le dis, les mots de passe sont changés régulièrement, dans ce cas, utilise une base de données... plutôt que de modifier le code source de la page à chaque fois que tu auras besoin de changer les identifiants
De plus, il serait bien d'utiliser un couple login/password plutôt que juste un password.
Sinon, des petits malins pourraient s'amuser à essayer de forcer l'accès à ta page en utilisant des scripts de "force brute" pour cracker le password.
Et pour finir, vu que tu débutes dans le monde php, voici quelques conseils à appliquer à tes codes :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Bonjour,
Je ne suis pas particulièrement pointu en sécurité, mais tu pourrais a minima remplacer 'kangourou' par sa valeur md5 (2e55b55e3580b47e5155a8374a833a74) pour ne pas le mettre en clair dans le source.
Après tu testes md5($_POST['mot_de_passe']) == "2e55b55e3580b47e5155a8374a833a74"
voir d’autres possibilités : https://apprendre-php.com/tutoriels/tutoriel-35-scuriser-les-mots-de-passe-avec-les-hashs-et-les-salts.html
Pour une saisie du formulaire et son contrôle tout en un, la logique ce serait en début du source de tester si 'mot_de_passe' est renseigné, si oui : contrôle, si non : affichage formulaire qui s’ auto relance.
Je ne suis pas particulièrement pointu en sécurité, mais tu pourrais a minima remplacer 'kangourou' par sa valeur md5 (2e55b55e3580b47e5155a8374a833a74) pour ne pas le mettre en clair dans le source.
Après tu testes md5($_POST['mot_de_passe']) == "2e55b55e3580b47e5155a8374a833a74"
voir d’autres possibilités : https://apprendre-php.com/tutoriels/tutoriel-35-scuriser-les-mots-de-passe-avec-les-hashs-et-les-salts.html
Pour une saisie du formulaire et son contrôle tout en un, la logique ce serait en début du source de tester si 'mot_de_passe' est renseigné, si oui : contrôle, si non : affichage formulaire qui s’ auto relance.
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je ne sans pas ce que tu veux dire par "sécurisé". en tous cas, les visiteurs n'ont aucun moyen de voir ta source php.
je ne sans pas ce que tu veux dire par "sécurisé". en tous cas, les visiteurs n'ont aucun moyen de voir ta source php.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ok merci
dans mes recherches je suis tombe sur une vidéos dont j'ai essaye de reproduire le code mais sa ne marche pas lorsque je charge la page je vois:
( ! ) Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\wamp64\www\Tuto\page mdp\index.php on line 22
pouvez vous m'aider à corriger s'il vous plait
dans mes recherches je suis tombe sur une vidéos dont j'ai essaye de reproduire le code mais sa ne marche pas lorsque je charge la page je vois:
( ! ) Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\wamp64\www\Tuto\page mdp\index.php on line 22
pouvez vous m'aider à corriger s'il vous plait
<?php $motdepasse = 'supraphoenix'; // on teste si le formulaire a été bien envoyé if(isset($_POST['envoi'])) { // on verifie que la case mot de passe est valide et non vide if(isset($_POST['mdp']) AND !empty($_POST['mdp'])) { // on vérifie que le mot de passe entrée par l'utilisateur est le meme que celui que vous avez défini if($_POST['mdp'] == $motdepasse) { $accessgranted = 1; } else { $erreur = 'Attention le mot de passe entrée est erroné'; } } if(!isset($accessgranted)) { ?> <h1>PAGE PROTEGE PAR UN MOT DE PASSE</h1> <hr> <?php if (isset($erreur)) ( echo $erreur; ) ?> <form action="" method="post"> Veuillez entrer le mot de passe : <br> mot de passe <input type="password" name="mdp"> <input type="submit" name="envoi" value="entrez"> </form> <?php } else // debut de la page sécurisée ?> <h1>PAGE PROTEGE PAR UN MOT DE PASSE</h1> <?php } ?>
je ne comprends toujours pas
Bon dimanche !