Mot de passe invisible dans le code source

Signaler
Messages postés
36
Date d'inscription
lundi 26 janvier 2009
Statut
Membre
Dernière intervention
2 mai 2009
-
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
-
Bonjour,

J'ai fait 2 pages
1 pour écrire le mot de passe
1 pour afficher la page protégée
voici les codes
1RE PAGE

<?php
if(isset($_GET['erreur'])){
echo 'Mauvais code entré!';
}
?>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Desciption" content="robba vecchia, mode fillette">
<meta name="Keywords" content="robba vecchia, nathalie sadoune, vêtement fillette, mode enfant 6-12 ans, tribu robba vecchia, vêtement robba vecchia, robe fille, vêtement pré-ado, mode lolita, hippy chic, mode bohémienne, bohemian style, mode bohème, tricot fait main fillette, marque de vêtement fillette, marque de vêtement hippy chic fillette, robe du soir fillette, look branché pour fille, sarouel pour fille, mode romantique pour fillette">
<title>COLLECTION HIVER</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style>

//<script type="text/javascript">
function verifFormulaire()
{
if(document.formulaire.login.value==''){
alert('Veuillez entrer votre code d\'accès');
}else{
document.formulaire.submit();
}

if(document.formulaire.login.value.indexOf('222455CNP') == -1) {
alert("Ce n'est pas le bon code d\'accès!");
}else{
document.formulaire.submit();
}

}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i[historique.html ]
</td>
</tr>
<tr>
<td height="60" colspan="2">



[collection_new.html ]
</td>
</tr>
<tr>
<td height="60" colspan="2">



[tribu.html ]
</td>
</tr>
<tr>
<td height="60" colspan="2">



[presse.html ]
</td>
</tr>
<tr>
<td height="60" colspan="2">



[news.html ]
</td>
</tr>
<tr>
<td height="60" colspan="2">



[contact.html ]
</td>
</tr>
<tr>
<td height="72" colspan="2" valign="bottom">




</td>
</tr>
<tr>
<td width="50" height="73" valign="bottom">

</td>
<td width="50" valign="bottom">

</td>
</tr>
<tr>
<td colspan="2"> </td>
<td width="10"> </td>
<td width="850"> </td>
<td width="100"> </td>
</tr>
</table>



<map name="Map2" id="Map2">
[collection_new.html
</map>



</html>

2E PAGE
<?php
if(isset($_POST['login'])&&$_POST['login']=='222455CNP'){
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Desciption" content="robba vecchia, mode fillette">
<meta name="Keywords" content="robba vecchia, nathalie sadoune, vêtement fillette, mode enfant 6-12 ans, tribu robba vecchia, vêtement robba vecchia, robe fille, vêtement pré-ado, mode lolita, hippy chic, mode bohémienne, bohemian style, mode bohème, tricot fait main fillette, marque de vêtement fillette, marque de vêtement hippy chic fillette, robe du soir fillette, look branché pour fille, sarouel pour fille, mode romantique pour fillette">
<title>COLLECTION</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i]0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
</head>









[collection_new.html
</map>

<map name="Map3" id="Map3">
]
[#
]
[hiver_flash.html ]

</map>
</html>



<?php
}else{
header('location: http://www.designmedia.fr/robba/hiver_1bisok.php?erreur=1');
}
?>
</html>


ça fonctionne très bien le seul problème c'est que quand on demande le code source le mot de passe apparait que puis-je faire ??

Merci

13 réponses

Messages postés
1309
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
5 juin 2013
14
Salut,

De base stocker un mot de passe en clair est une très mauvaise idée, idem pour le fait de pouvoir l'afficher. Un mot de passe ça se stocke de préférence hashé afin que même si quelqu'un arrive a le récupérer il ne puisse pas l'utiliser.

Pour ce qui est du stockage, mettre ça en dur dans le code c'est un peu la loose, stocke donc plutôt dans une base de données ou directement dans un ficher. Sinon un gros conseil : essaye de coder proprement, là ton code est franchement illisible. Revois donc les bases du xhtml et sépare html, css, js et php car là c'est la caverne d'Ali Baba.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Hello,

Euh... je reprends un peu les termes de TychoBrahe : faut que tu codes proprement histoire de pouvoir te relire et que nous puissions te lire ;-)
Je te conseille de mettre en place ton mot de passe dans une variable php et non visible dans ton code source !
Tu as la chance d'avoir du php, alors utilise le au maximum :)

Je te propose de mettre en place des sessions php.
C'est simple, facile à installer et ça garanti un niveau de sécurité supplémentaire comparé à ta proposition.

A insérer dans ta page de login en début de page (avant <html>) :

<?php
// Copyleft 2009 - Pyrrah - http://www.pyrrah.eu
$password = "ICI-TON-MOT-DE-PASSE"; // Mot de passe

if ($_POST[logged] == "yes") {
// ^^ On supposera que le formulaire possède un champ invisible nommé "logged" de valeur "yes".
// Le formulaire est transmis, alors on continue :)

    if (empty($_POST[password])) {
        echo "Erreur : Mot de passe vide.";
        exit();
    }
    elseif ($_POST[password] != $password) {
        echo "Erreur : Mot de passe incorrect.";
        exit();
    }
    else {
        $_SESSION['auth']="simply_and_easy"; // nom de la session permettant de vérifier que l'user est authentifié
        header('Location: console.php'); // User identifié, on le redirige vers la console admin (on supposera console.php)
    }
}
?>

A insérer dans tes pages à protéger (avant <html>) :
( Tu peux faire un include, c'est vachement mieux :o )

<?php
@session_start();
if ($_SESSION['auth'] ! = "simply_and_easy") {
    include("login.php"); // l'user n'est pas identifié, on le redirige vers la page de login
    exit();
}
?>

Après si tu veux faire des multicomptes, faudra te tourner vers php combiné à mySQL...
Bonne continuation :)
(Si mon message te convient, n'oublie pas de le valider :o)

~Pyrr@h.

H4ck3r vaillant, rien d'impossible.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Le code n'est pas 100% sûr (notamment pour le login).
Il faut songer à le protéger (contre les attaques brute force ?).
Bon, après tout dépend, si c'est pour un petit site y'a pas besoin ;)

H4ck3r vaillant, rien d'impossible.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Pour le code à insérer ta page de login, j'ai oublié de mettre tout de suite après la balise de déclaration php :
@session_start(); // On ouvre une session


H4ck3r vaillant, rien d'impossible.
Messages postés
36
Date d'inscription
lundi 26 janvier 2009
Statut
Membre
Dernière intervention
2 mai 2009
1
Merci d'avoir répondu je pense avoir compris l'essentiel mais j'ai un problème pour mon formulaire donc j'ai mis ton code php au début

<?php
@session_start(); // On ouvre une session

// Copyleft 2009 - Pyrrah - http://www.pyrrah.eu
$password = "mot de passe"; // Mot de passe

if ($_POST[logged] == "yes") {
// ^^ On supposera que le formulaire possède un champ invisible nommé "logged" de valeur "yes".
// Le formulaire est transmis, alors on continue :)

    if (empty($_POST[password])) {
        echo "Erreur : Mot de passe vide.";
        exit();
    }
    elseif ($_POST[password] != $password) {
        echo "Erreur : Mot de passe incorrect.";
        exit();
    }
    else {
        $_SESSION['auth']="simply_and_easy"; // nom de la session permettant de vérifier que l'user est authentifié
        header('Location: verif_essai.php'); // User identifié, on le redirige vers la console admin (on supposera console.php)
    }
}
?>

et ensuite mon formulaire et je pense que c'est là où il y a une erreur pourrais-tu m'aider encore un peu ??

<form method="post" action="verif_essai.php" name="simply_and_easy">

<tr>
<td>






</td>
</tr>
</form>

merci
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
<form method="post" action="verif_essai.php" name="simply_and_easy">

Le nom du formulaire à mettre est "logged" :)

H4ck3r vaillant, rien d'impossible.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
<form method="post" action="verif_essai.php" name="logged">

H4ck3r vaillant, rien d'impossible.
Messages postés
36
Date d'inscription
lundi 26 janvier 2009
Statut
Membre
Dernière intervention
2 mai 2009
1
bon ok j'ai changé le "name" mais quand je teste la page apparaît blanche !!!!!

encore un p'tit peu si tu peux !!!!!
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
J'ai pigé. Désolé de pas avoir vu plus tôt :)

Enlève le nom de ton formulaire.
Ajoute après form la ligne suivante :

Voilà, normalement ça fonctionne ;)
Messages postés
36
Date d'inscription
lundi 26 janvier 2009
Statut
Membre
Dernière intervention
2 mai 2009
1
<form method="post" action="verif_essai.php" name="logged">

<tr>
<td>






</td>
</tr>
</form>

comme ça ?? ça ne fonctionne toujours pas
Messages postés
36
Date d'inscription
lundi 26 janvier 2009
Statut
Membre
Dernière intervention
2 mai 2009
1
je ne comprend pas quand tu dis enlève le non de ton formulaire où ???

<form method="post" action="verif_essai.php" name="logged">

dans cette ligne ???

Merci
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Rebonjour et désolé pour la période d'absence.
Je n'ai pas été très clair... voici le code à mettre (à adapter selon la disposition de ta page) :

<!-- Pyrrah.eu -->
<form method="post" action="verif_essai.php">
   
   

   &nbsp;
   
</form>

Voilà à quoi ça doit ressembler :)
Dis moi ce que t'en penses et si ça marche... x)

Pyrrah
H4ck3r vaillant, rien d'impossible.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Pyrrah





H4ck3r vaillant, rien d'impossible.