"etant donné que je suis debutant je vous annonce que ce mot de passe peut etre cracké par méthode brute force mais c'est tres bien pour metre sur un site perso"
> heeuuu il n'y a rien à cracker, tu ne protèges même pas la page elle-même loool... no comment
a mon avis ce code est plus la pour servir d'appui pour l'apprentissage du php que autre chose par ce que j'avais fais ça il y a 3 mois j'etais vraiment dans mes debuts et j'aurais bien aimé avoir un modele pour corriger les fautes que j'avais faties OK?
bien-sûr qu'il y a moyen d'avoir l'adresse de cette page, et je suis de l'avis de tout le monde, sert a rien! a la limite, tu mets ta page a la place du header(location (tu mets ton code) elle sera directement protégée...
c'est un peu trop simple sinon tu peut inclure ta page "pageproteger.php" grace au include et ds ton fichier "pageproteger.php" tu rajoute au debut if (isset($_POST['code']))
{
sa serait mieu deja. si je devrait modifiez legerement tout code je ferait sa:
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
if (isset($_POST['code']))
{
if ($_POST['code'] == $Code_secret)
{
include($Page_protegee);
}
else {
echo 'Entrez le code d\'acces
<form action="#" method="post">
Code d\'acces:
</form>';
} ?>
</html>
A noter que pour l'envoi du formualire prefere # (page courante) car notre page ne s'appelle pas forcement acces.php. Au debut De la page proteger tu doit rajouter
<?php if (isset($_POST['code'] AND $_POST['code'] == $Code_secret) { ?>
ton fichier proteger
<?php } ?>
pour eviter que l'on ouvre sans passer par ton formulaire.
Ensuite il serait interresant de cree un formulaire pour proteger tes pages. JE te ferait sa demain car la je suis occuper (mais la encore c'est pas bien dur).
Je t'encourage pour continuer le php et t'ameliorer.
Il est tout à fait possible de filtrer sur un fichier, les permissions allouées dans un dossier. OU plusieurs. Voire même plusieurs filtres différents.
C'est clair que cette sources est pour l'apprentissage comme la dit keyloger666 mais je soutient l'auteur pour conctinuer dans cette voit (il nous fera une ssources beaucoup mieu la prochaine fois hein ^^)
mci Sannazzarotiti
je vous assure que cette source est vachement bien pour l'aprentissage du php (le votre remonte peut etre a trop longtemps pour vous en rapeller ;-)
Bon d'Accord, ce n'est ce qui a de plus sécuritaire comme protection, mais au moin si tu veux utilisé les incldues et que tu veux empecher que les personne tappe directement de la page en include tu peu faire ceci:
Dans la page d'appel
define('IN_SECURE_PAGE',true);
Dans la page a inclure:
// *************************************************************************
// VÉRIFICATION SÉCURITÉ SI ENTRE ADRESSE DIRECT
//**************************************************************************
if(!defined('IN_SECURE_PAGE')){ die("
<center>Exécution de la page non sécurisé. Risque de piratage. Execution interrompu</center>"); }
Sa peu tjrs aider un peu, koi que sa restera pas super comme protection.. :P
Outre le fait qu'effectivement, ça ne protège pas grandchose, il y a autre chose qui me gène, quand on parle d'utilité pour les débutants : c'est mal codé. Et ça, ce n'est pas rendre service aux débutants.
<? au lieu de <?php
html très approximatif (balises non fermées)
redondance (2 fois le même formulaire)
Bonjour!
C'est à peu près ce que j'utilise, sauf que c'est l'inverse...
<?php
if (isset($_POST['code']))
{
if ($_POST['code']===$votrecode) //Bien sur apres avoir recupéré $votrecode la ou il est stocké
{
?>
Contenu de ma page...
<?php
}
else
{
$dejaessaye=TRUE;//Pour permettre de savoir si on demande de tapper ou de retapper le code...
include('connexion.php');
}
}
else
{
$dejaessaye=FALSE;
include('connexion.php');
}
//Le fichier connexion.php peut donc être partagé entre tous les fichiers du site, à condition de mettre action="<?php echo $_SERVER['PHP_SELF']; ?>" pour le formulaire.
Bon courage...
J'vois vraiment pas l'interet d'utiliser une source comme celle la ! Il y a des méthodes faites pour ca : htaccess, alors utilisez les ! Ca ne sert à rien de réinventer la roue :/
les htaccess (il me semble) cache tout le fichier. avec ce script tu peut dissimuler une petite parti (ce qui est parfois mieu que de cree les htaccess) donc dire qu'il ni a pas d'interet est faux a mon gout. De plus, on la bien dit, cette sources servira a l'apprentissage des debutants mais il faut clarifier le code a mon gout.
La je suis dépassé!
Les htaccess existent, bien entendu, mais utiliser autre chose n'est pas réinventer la roue...
Déjà, juste au niveau de l'ergonomie, la fenêtre de connexion ne peut decement pas être affichée sur un site commercial.
Se servir du htaccess pour empêcher l'acces direct à certains fichiers, oui, mais pas sytématiquement non plus.
Les htaccess sont tout de même plus compliqués à mettre en place, il faut les faire évoluer avec le contenu du dossier si celui-ci contient des fichiers qu'on peut atteindre et d'autres interdits.
Cette source a été placée dans la catégorie debutant, donc je ne vois pas où est le problême d'éviter dans un premier temps ces fichiers de blocage.
Par contre, la solution proposée n'est pas complête, puisque pour celle-ci on a justement besoin d'un htaccess, bien qu'il ne soit pas proposé, ou de la modifier à la manière de Dalton ou à la mienne (qui revient un peu au meme...).
Il faut donc systématiquement choisir la technologie en fonction du site, mais ni cette solution, ni les htaccess ne sont LA solution à tous les problèmes.
Du moins c'est mon avis...
Personnellement, bien que l'intention soit bonne, je pense que ça fait tout sauf aider les débutants ce genre de code... mais bon... ne dit on pas que c'est l'intention qui compte... .. .
avce les codes des commentaires la source devient un peu plus securiser. Essai de hacker ce systeme pour voir ;) (systeme qui met le code sources directement dans la page web et non pas qui la redirige)
bonjour à tous
je rejoint votre discussion du c'est utile pour les débutants vs c'est vraiment inutile pour dire que vous faites une fixette sur la sécurité.
En quoi ce script n'est pas sécurisé, c'est quoi pour vous sécurisé, mettre des sessions partout avec des htaccess ? dans ce cas vous avez oublié de faire une connexion ssh en 256 bit ?!!!!!!!
Une protection basique comme celle-ci suffit largement à bloquer une bonne partie des personnes qui veulent acceder a des zones interdites !
Mais j'aimerai avoir un exemple de ce que vous prenez pour une page sécurisé histoire de voir un peu ...
merci :)
Ne t'énerve pas CodeFalse !! Ce sont les critiques qui font avancer le plus !
Je me sert moi même des conseils que me donnent ceux qui en savent plus que moi !
Mais avant de continuer plus, vas voire déjà la dessus, c'est bien sécurisé, facile et RAPIDE ! ;)
http://www.siteduzero.com/tuto-3-102-1-tp-page-protegee-par-mot-de-passe.html
je ne suis pas énervé :)
je rigole juste sur le fait que quand quelqu'un poste un script, il y a tjs des gens pour critiquer l'inutilité du post. Pourtant, si la personne le juge interessant, c'est que déjà pour elle même, il est interessant, alors à quoi bon critiquer ... mais bon.
Donc les critiques chuis totalement pour, sauf si la critique se résume à un "c'est nul", "inutile !" et yen a pas mal sur ce script, qui même s'il n'est pas tres puissant, et qu'il s'adresse à un niveau débutant, je suis sur qu'il trouvera bien le bonheur d'une personne à la quete d'une protection basique. mais bon, comme toujours, ca ne reste que mon point de vue ...
il suffit que j'aille a pageprotegee.php sans passer par le formulaire. C'est sa qui n'est pas securiser. Perso, j'ai donner mes conseil pour ameliorer le code et jamais dit nul, inutile car je respecte le travail des autres (meme basic, si travail il y a).
oui c'est vrai qu'il ne sert à rien de dire juste 'c'est nulle' ou 'ça sert à rien' sans prendre le temps d'expliquer. Et, CodeFalse tu a raison de dire que le code de Keyloger666 servira surement à certaines personnes et qu'au lieu de le critiquer on ferait mieux de l'aider et certains l'on fait, le reste on les oublis ;) !
A ++
de toute façon ce code convient tres bien a quelqu'un qui veut proteger sa page contre des gens ne connaissant rien a l'informatique et non je ne mettrait pas de htacces <POINT FINAL
C'est ca que je comprend pas, "si le visiteur ne connait rien à l'informatique, c'est bon", j'aime pas cette phrase, je suis un adepte de l'optimisation et ce genre de phrase m'oripile, avis personnel ^^
Sannazzarotiti, le truc par rapport a la redirection du header, c'est que si tu veux acceder a la page protégée sans passer par le formulaire, tu peux, ok, mais seulement si tu connais le nom de la page, car sinon, si tu va sur un site sans connaitre le nom de la page protégé, tu pourra pas y acceder (apres, si tu accede une fois et que tu garde le lien, ok tu ne passera plus par la page d'acces)
[quote="keyloger666"]quelqu'un qui veut proteger sa page contre des gens ne connaissant rien a l'informatique/quote
Ce que tu n'a pas compris c'est que ceux qui tente d'accéder au pages interdites avec de mauvaises intentions c'est rarement ceux qui ne connaissent rien à l'informatique... .. .
[quote="codeFalse]Une protection basique comme celle-ci suffit largement à bloquer une bonne partie des personnes qui veulent acceder a des zones interdites !/quote
Cf réponse précédente... en terme de sécurité soit on bloque tout le monde soit autant bloquer personne... .. .
les problèmes de la source comme précédament dit... .. .
-1- facilement contournable en allant directement sur la page qui doit être protégée... ce n'est pas comme ça qu'il faut procéder... la page à protéger doit inclure le fichier d'authentification au tout début si l'internaute n'est pas loggé l'execution de la page est stoppé laissant apparaitre le formulaire d'identification... .. .
-2- la modularité du script... mieux vaut stocker le nom de membres et leur pass dans un fichier à part pour une meilleur mise à jour... il peut être interessant si un jour tu veux accréditer plusieurs personnes de mettre ça dans un tableau...
-3- aucune donnée d'authentification n'est créée (via les sessions), ce qui obligera le membre à se reloguer s'il change de page entre temps, s'il recharge la page ou s'il y a plusieurs pages à accès restreint... .. .
j'aimerais bien savoir comment faire pour inserer sa d'une maniniere qui fonctionne sur mon site. d'abbord je n'est pas compris ce qui faut remplacer par "Content-Type" et "text/html; charset=iso-8859-1" aidez un petit debutant s.v.p !
comme quelques uns, je suis énervé par ceux qui, préamptoirement, rejetent ce code comme étant nul , passoire, etc ...
Entre l'accès libre et la protection totale (infaillibilité toute théorique), ce code est un premier niveau, et je préfère voir des gens en proposer l'amélioration et des corrections ou variantes.
Dans votre maison, laissez vous la porte grande ouverte ? Déja une simple clé ordinaire vous évite l'intrusion des curieux malveillants. Passez aux serrures triple point et aux verrous supplémentaires ensuite. Passez à la porte blindée comme à la banque de France ou fort Knox si vous voulez la protection ultime.
Ici, on propose un code pour ceux qui n'ont besoin que d'une clé basique, comme le paysan qui ferme son poulailler pour écarter le renard.
Moi, une simple protection comme celle-ci me suffit pour mon site perso, à condition que le quidam ayant 5/20 en informatique ne puisse pas voir "EN CLAIR" ni le mot de passe, ni le nom de la page qui va suivre , par exemple en affichant dans son navigateur le "SOURCE HTML" de la page initiale.
C'est donc la seule question que je pose au créateur de ce code PHP, et à ses détracteurs. MERCI d'une Réponse
Je voulais le dire ce matin puis j'ai oublié.
Merci de modifier le descriptif.
néanmoins, pour répondre à Zouriteman : ce n'est probablement pas celui qui a 5/20 en PHP qui va tenter le plus de pirater un site. De plus, pas la peine d'avoir 18/20 pour contourner les "protections" trop légères : il y a largement assez de tutoriels sur le net pour que n'importe quel noob y parvienne. Malheureusement.
Je renvoie vers les commentaires de Kankrelune, qui sont très intéressants et très justes. Il serait bon de lire les conseils et les explications, plutôt que de se bloquer obstinément.
Pour la remarque "F****" , cela est un avertissemnt , qui ne me concerne pas.
Par contre, je prend bonne note de la remarque de MALALAM.
mais à moins qu'il fasse partie d'un club de joyeux hackers / crackeurs, veux t il bien me dire honnêtement quel pourcentage des internautes qu'il connait sont capables de faire ce qu'il dit ( ou d'y consacrer le temps nécessaire) ?
dans mon cas , mon site est un site "perso" avec des commentaires et des photos de famille ; mon fils qui est dans le lot et qui a un peu trop la fibre "sécuritaire", ne veux pas qu'un employeur à qui il adresse un CV de candidature, ou son chef de service, puisse aller voir notre site avec une curiosité malsaine ( nota : chacun peut avoir pour moins de 10 euros / an un site à son nom , genre www.durand.fr ). Moi, des PDG , des DRH , des Chefs qui savent faire ce que décrit MalaLam, je n'en connais aucun (en moins de 60 secondes, car au dela, le temps c'est du fric pour eux).
Zouriteman => bon, tout d'abord, et ce afin de donner un peu de crédibilité à ce que je dis (faut bien ;-) ) : s'il y a beaucoup de jeunes ici qui, tout en étant excellents en développement web, peuvent paraitre très éloigné des réalités d'un environnement professionnel, je ne rentre pas dans cette catégorie. Je ne suis pas très jeune, déjà ;-), et je travaille dans le développement depuis bientôt 10 ans. Actuellement, je suis responsable de développement dans une boîte, et nous développons beaucoup d'applications web (entre autres applications, pour beaucoup grand public).
Donc, non, je ne suis pas un hacker. Mais des gars capable de hacker un site mal protégé, j'en connais un bon paquet (ici même, pour commencer...beaucoup ont largement le niveau. Et peu, heureusement, l'envie). Dans les différentes boîtes dans lesquelles j'ai bossé, crois-moi, un gros pourcentage des développeurs étaient largement capable de hacker un site mal protégé. De toute façon, je le répète, ça n'a rien de compliqué : quelqu'un qui veut hacker et qui est un débutant trouvera assez de "ressources" sur le net pour y parvenir.
Il peut paraître stupide de protéger un site perso, et pourtant, même un site perso n'est pas à l'abri. Récemment, quelqu'un de ma connaissance s'est fait hacké son forum, un forum perso, juste pour lui et quelques potes. Ok, rien d'important de perdu...mais un forum foutu en l'air néanmoins. Et ce forum était un forum bien connu, même pas un truc perso : un package largement diffusé.
Pour faire suite à ce que tu dis à propos de ton fils : nous avons embauché il y a peu, un webmaster. Nous avons reçu des tonnes de cv, avec des tonnes d'exemple de sites. Ton fils a raison : nous avons écarté immédiatement ceux qui faisaient "amateurs", et ceux qui présentaient des failles de sécurité évidentes. Et il y en avait...beaucoup. Et oui, je faisais quelques tentatives (sans rien casser évidemment), pour voir. C'est important, la sécurité...surtout quand on bosse pour des clients.
Bref...pour la dernière partie de ton message : mon PDG le prendrait très mal si un site que l'on a développé pour un client se faisait hacker...donc, mon équipe et moi faisons en sorte que cela n'arrive pas. Et un truc à compprendre, c'est que développer un système d'identification et de protection meilleur que celui présenté ici ne prend pas plus de temps que de développer ce système-ci. Plus de connaissances, sans aucun doute. Mais pas plus de temps. Donc pas plus d'argent...(enfin, salaires mis à part : mais là, un problème se pose : je n'"embaucherai pas quelqu'un qui développe un système de protection comme celui-ci...et à mon sens, un développeur web débutant doit être capable de développer un meilleur système sans problème : utiliser des sessions, avoir des bases en htaccess, et des bases en failles de sécurité et un minimum quand on veut se lancer dans ce métier).
Je crois que Malalam à tout dit, ou presque, j'y rajouterais trois choses...
-1- une des bases du crashing lorsque l'on veut s'attaquer à un site OU A UN SERVEUR (le crashing ne concerne pas que les sites les débutant on tendance à l'oublier) c'est de retrouver tous les sites hébergés sur le même serveur... ainsi si l'on arrive à compromettre le plus faible on pourra surement s'attaqué aux autres par la suite... sans parler de fouttre le serveur en l'air ou de le détourner de son utilisation première... c'est comme s'attaquer à une banque en passant par le mur mitoyen du magasin d'a coté... rappelez vous que c'est le maillon le plus faible qui détermine la solidité d'une chaîne
-2- bien souvent on se dit "je fais un site perso pour moi et mes potes pas besoin d'une forteresse" et un beau matin on se retrouve avec le site crashé... les black hat s'attaquent aux sites sans distinction de taille, de niveau de developpement, etc... au contraire les script kiddies manquant de connaissance s'attaqueront au premier petit site venu presentant des faiblesses de sécurité c'est bien plus simple et surtout à leur portée pour flatter leur égo de boutoneux... il y a peu j'ais une copine qui s'est fait défacer son site pièce par pièce par des script kiddies (ils y sont pas allé de main morte en plus) pourtant cette jeune fille adorable s'il en est n'avait qu'un peitit site tenant plus du blog que du gros site à contenu, elle y présentait ses photos, quelques écrits litéraires rien de bien mirobolant aux yeux du premier venu... ça n'a pas empeché ces %ùµ*£$§ de profiter d'une faille de vérification utilisateurs et d'une faille (que dis je un gouffre) XSS... .. .
-3- minime mais non moins important quand on developpe un script il faut essayer de faire en sorte que ce dernier soit fonctionnel en l'occurence pour ce code c'est loin d'être le cas puisqu'il faut se relogger à chaque chargement de page... imaginez vous tapez le texte d'un article coté admin vous soumettez l'article et en guise de soumission vous vous retrouvez avec la page de connection votre texte étant perdu... c'est un peu con... de même si à chaque fois que vous changez de page vous devez vous reconnecter je vois pas trop l'interet... .. .
Merci pour les deux derniers commentaires étoffées et sérieux ;
mais il n'y manque que une seule chose à mon gout :
puisque ce script PHP est trop simpliste , et peut faire détruire le site par quelques voyous d'internet "boutonneux" comme dit l'un , ou pouvons nous trouver (par exemple sur Code Source) un vrai et complet exemple d'une protection correcte et efficace, disons sans faire dans la ligne maginot, un truc Deux étoiles au Guide Michelin de Mrs Kankrelune et malaLam ?
Heu, bonne question.
Il n'y en a aucun qui me vienne à l'esprit, là.
Ca ne veut pas dire qu'il n'en existe pas sur CS : je ne connais pas tous les codes par coeur...
De plus, un tel système dépend pas mal de la structure du site, et de la base de données associée (moteur, car on ne fera pas attention aux même choses que l'on utilise un moteur mysql ou un moteur mssql par exemple, et structure : niveaux de droits, etc).
Il serait sans aucun doute utile de réaliser un tuto recensant les différentes façons de développer un bon système d'identification et de sécurisation. Exhaustif. Mais un code générique...je ne suis pas très sûr. Si je trouve le temps dans la journée, je montrerai quelques exemples.
Je répondrais comme Malalam ça dépend de ce que tu veux comme stockage pour les pass... SDGB, PHP... je dois avoir une classe qui traine avec stockage en fichier php... après tu veux coupler le code avec une base de données ça dépend aussi de la structure de ta table... .. .
Je cherche dans le fouttoir qui me sert de pc et si vraiment tu la veux je la posterais... .. .
Je suis hébergé chez OVH , mais ici ou ailleurs, la seule BD qu'on peut utiliser est MySQL.
Mais s'il y a une possibilité de controle d'identification sérieux entièrement en PHP ( donc sans devoir créer une BD et mettre mySQL en route rien que pour ça ...) je préfèrerais !
Tu peux faire une identification en pseudo/mot de passe et dans la base de donnée tu stock adresse IP, un id unique (somme md5 par ex) si le pseudo/mot de passe était juste dans la base de donnée utilisateur
Ensuite quand le gars se connecte, tu récupere son ip et la valeur md5 dans le cookie et tu le compare à la base de donnée, si c'est juste, alors tu lui donne l'accès.
C'est pas mal sécurisé car le gars, doit gerer l'ip forwarding et toruver la séquence contenue dans le cookie du gars qu'il hack pour pouvoir avoir accès à chaud (cad quand la personne est déjà connecté) sur un acces admin.
Maintenant t'es pas a l'abri de celui qui connait le pseudo/pass :p
Donc la meilleur sécu d'un acces authentifié, c'est les autres pages ;)
Bon, ca c'est mon point de vue, ptete que les autres pensent autrement.
Ca peux etre interessant de partager son idée sur la sécurité et quelle methode (algorithmique) vous employerez pour un acces tres sécurisé :)
Le principe est bon mais le problème du stockage de l'ip c'est les ip hautement dynamiques par exemple celle d'AOL qui changent régulièrement au cours de la connection... il faut donc prévoir une option pour ce genre d'ip... mais le principe est bon... par contre à mon avis pas besoin de stocker le hash en cookie perso je préfère le stocker en session... .. .
bah soit tu partage le passwd avec tes différents membres
soit tu crée une table dans ta base de données avec user et passwd et tu vérifie que l'user et le passwd correspondent bien par rapport au formulaire ou tu demandera ces infos (attention au sql injection !)
"etant donné que je suis debutant je vous annonce que ce mot de passe peut etre cracké par méthode brute force mais c'est tres bien pour metre sur un site perso"
> heeuuu il n'y a rien à cracker, tu ne protèges même pas la page elle-même loool... no comment
{
sa serait mieu deja. si je devrait modifiez legerement tout code je ferait sa:
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<?php
$Page_protegee = "pageprotegee.php";
$Code_secret = "votrecode";
if (isset($_POST['code']))
{
if ($_POST['code'] == $Code_secret)
{
include($Page_protegee);
}
else {
echo 'Entrez le code d\'acces
<form action="#" method="post">
Code d\'acces:
</form>';
} ?>
</html>
A noter que pour l'envoi du formualire prefere # (page courante) car notre page ne s'appelle pas forcement acces.php. Au debut De la page proteger tu doit rajouter
<?php if (isset($_POST['code'] AND $_POST['code'] == $Code_secret) { ?>
ton fichier proteger
<?php } ?>
pour eviter que l'on ouvre sans passer par ton formulaire.
Ensuite il serait interresant de cree un formulaire pour proteger tes pages. JE te ferait sa demain car la je suis occuper (mais la encore c'est pas bien dur).
Je t'encourage pour continuer le php et t'ameliorer.
Sannazzarotiti
<?php
if (isset($_POST['code']))
{
if ($_POST['code']=='votrecode')
{
?>
ICI TU METS LE CODE DE TA PAGE
<?php
} else {
?>
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
Code eronné
A nouveau entrez le code d'acces
<form action="acces.php" method="post">
Code d'acces:
</form>
</html>
<?php
}
} else {
?>
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
Entrez le code d'acces
<form action="acces.php" method="post">
Code d'acces:
</form>
</html>
<?php
}
?>
les htaccess, c'est pour les chiens...?
<Files>...</Files>
Il est tout à fait possible de filtrer sur un fichier, les permissions allouées dans un dossier. OU plusieurs. Voire même plusieurs filtres différents.
C'est clair que cette sources est pour l'apprentissage comme la dit keyloger666 mais je soutient l'auteur pour conctinuer dans cette voit (il nous fera une ssources beaucoup mieu la prochaine fois hein ^^)
je vous assure que cette source est vachement bien pour l'aprentissage du php (le votre remonte peut etre a trop longtemps pour vous en rapeller ;-)
Dans la page d'appel
define('IN_SECURE_PAGE',true);
Dans la page a inclure:
// *************************************************************************
// VÉRIFICATION SÉCURITÉ SI ENTRE ADRESSE DIRECT
//**************************************************************************
if(!defined('IN_SECURE_PAGE')){ die("
<center>Exécution de la page non sécurisé. Risque de piratage. Execution interrompu</center>"); }
Sa peu tjrs aider un peu, koi que sa restera pas super comme protection.. :P
++
<? au lieu de <?php
html très approximatif (balises non fermées)
redondance (2 fois le même formulaire)
C'est à peu près ce que j'utilise, sauf que c'est l'inverse...
<?php
if (isset($_POST['code']))
{
if ($_POST['code']===$votrecode) //Bien sur apres avoir recupéré $votrecode la ou il est stocké
{
?>
Contenu de ma page...
<?php
}
else
{
$dejaessaye=TRUE;//Pour permettre de savoir si on demande de tapper ou de retapper le code...
include('connexion.php');
}
}
else
{
$dejaessaye=FALSE;
include('connexion.php');
}
//Le fichier connexion.php peut donc être partagé entre tous les fichiers du site, à condition de mettre action="<?php echo $_SERVER['PHP_SELF']; ?>" pour le formulaire.
Bon courage...
Les htaccess existent, bien entendu, mais utiliser autre chose n'est pas réinventer la roue...
Déjà, juste au niveau de l'ergonomie, la fenêtre de connexion ne peut decement pas être affichée sur un site commercial.
Se servir du htaccess pour empêcher l'acces direct à certains fichiers, oui, mais pas sytématiquement non plus.
Les htaccess sont tout de même plus compliqués à mettre en place, il faut les faire évoluer avec le contenu du dossier si celui-ci contient des fichiers qu'on peut atteindre et d'autres interdits.
Cette source a été placée dans la catégorie debutant, donc je ne vois pas où est le problême d'éviter dans un premier temps ces fichiers de blocage.
Par contre, la solution proposée n'est pas complête, puisque pour celle-ci on a justement besoin d'un htaccess, bien qu'il ne soit pas proposé, ou de la modifier à la manière de Dalton ou à la mienne (qui revient un peu au meme...).
Il faut donc systématiquement choisir la technologie en fonction du site, mais ni cette solution, ni les htaccess ne sont LA solution à tous les problèmes.
Du moins c'est mon avis...
Personnellement, bien que l'intention soit bonne, je pense que ça fait tout sauf aider les débutants ce genre de code... mais bon... ne dit on pas que c'est l'intention qui compte... .. .
@ tchaOo°
Rajoute une session ... parce que la c'ets pas du tout sécurisé
http://www.siteduzero.com/tuto-3-102-1-tp-page-protegee-par-mot-de-passe.html
et
http://www.siteduzero.com/tuto-3-152-1-proteger-un-dossier-avec-un-htaccess.html
CA ira bien avec le site du zéro !! ^^
Bon courrage pour la réecriture de ton scripte
je rejoint votre discussion du c'est utile pour les débutants vs c'est vraiment inutile pour dire que vous faites une fixette sur la sécurité.
En quoi ce script n'est pas sécurisé, c'est quoi pour vous sécurisé, mettre des sessions partout avec des htaccess ? dans ce cas vous avez oublié de faire une connexion ssh en 256 bit ?!!!!!!!
Une protection basique comme celle-ci suffit largement à bloquer une bonne partie des personnes qui veulent acceder a des zones interdites !
Mais j'aimerai avoir un exemple de ce que vous prenez pour une page sécurisé histoire de voir un peu ...
merci :)
Je me sert moi même des conseils que me donnent ceux qui en savent plus que moi !
Mais avant de continuer plus, vas voire déjà la dessus, c'est bien sécurisé, facile et RAPIDE ! ;)
http://www.siteduzero.com/tuto-3-102-1-tp-page-protegee-par-mot-de-passe.html
je rigole juste sur le fait que quand quelqu'un poste un script, il y a tjs des gens pour critiquer l'inutilité du post. Pourtant, si la personne le juge interessant, c'est que déjà pour elle même, il est interessant, alors à quoi bon critiquer ... mais bon.
Donc les critiques chuis totalement pour, sauf si la critique se résume à un "c'est nul", "inutile !" et yen a pas mal sur ce script, qui même s'il n'est pas tres puissant, et qu'il s'adresse à un niveau débutant, je suis sur qu'il trouvera bien le bonheur d'une personne à la quete d'une protection basique. mais bon, comme toujours, ca ne reste que mon point de vue ...
Le lien que tu m'a donné, ScripteurPermanent, reste dans l'optique du code donné par keyloger666. :)
il suffit que j'aille a pageprotegee.php sans passer par le formulaire. C'est sa qui n'est pas securiser. Perso, j'ai donner mes conseil pour ameliorer le code et jamais dit nul, inutile car je respecte le travail des autres (meme basic, si travail il y a).
A ++
:)
C'est pour sa que je dit qu'il doit etre reecrit (c'est pas tres long), jsute 2-3 chose a changer
Ce que tu n'a pas compris c'est que ceux qui tente d'accéder au pages interdites avec de mauvaises intentions c'est rarement ceux qui ne connaissent rien à l'informatique... .. .
[quote="codeFalse]Une protection basique comme celle-ci suffit largement à bloquer une bonne partie des personnes qui veulent acceder a des zones interdites !/quote
Cf réponse précédente... en terme de sécurité soit on bloque tout le monde soit autant bloquer personne... .. .
les problèmes de la source comme précédament dit... .. .
-1- facilement contournable en allant directement sur la page qui doit être protégée... ce n'est pas comme ça qu'il faut procéder... la page à protéger doit inclure le fichier d'authentification au tout début si l'internaute n'est pas loggé l'execution de la page est stoppé laissant apparaitre le formulaire d'identification... .. .
-2- la modularité du script... mieux vaut stocker le nom de membres et leur pass dans un fichier à part pour une meilleur mise à jour... il peut être interessant si un jour tu veux accréditer plusieurs personnes de mettre ça dans un tableau...
$lesMembres = array(
'nom_du_membre' => 'pass',
etc...
);
-3- aucune donnée d'authentification n'est créée (via les sessions), ce qui obligera le membre à se reloguer s'il change de page entre temps, s'il recharge la page ou s'il y a plusieurs pages à accès restreint... .. .
@ tchaOo°
Entre l'accès libre et la protection totale (infaillibilité toute théorique), ce code est un premier niveau, et je préfère voir des gens en proposer l'amélioration et des corrections ou variantes.
Dans votre maison, laissez vous la porte grande ouverte ? Déja une simple clé ordinaire vous évite l'intrusion des curieux malveillants. Passez aux serrures triple point et aux verrous supplémentaires ensuite. Passez à la porte blindée comme à la banque de France ou fort Knox si vous voulez la protection ultime.
Ici, on propose un code pour ceux qui n'ont besoin que d'une clé basique, comme le paysan qui ferme son poulailler pour écarter le renard.
Moi, une simple protection comme celle-ci me suffit pour mon site perso, à condition que le quidam ayant 5/20 en informatique ne puisse pas voir "EN CLAIR" ni le mot de passe, ni le nom de la page qui va suivre , par exemple en affichant dans son navigateur le "SOURCE HTML" de la page initiale.
C'est donc la seule question que je pose au créateur de ce code PHP, et à ses détracteurs. MERCI d'une Réponse
je pensse pareil mais evite de l'ecrire
Merci de modifier le descriptif.
néanmoins, pour répondre à Zouriteman : ce n'est probablement pas celui qui a 5/20 en PHP qui va tenter le plus de pirater un site. De plus, pas la peine d'avoir 18/20 pour contourner les "protections" trop légères : il y a largement assez de tutoriels sur le net pour que n'importe quel noob y parvienne. Malheureusement.
Je renvoie vers les commentaires de Kankrelune, qui sont très intéressants et très justes. Il serait bon de lire les conseils et les explications, plutôt que de se bloquer obstinément.
Par contre, je prend bonne note de la remarque de MALALAM.
mais à moins qu'il fasse partie d'un club de joyeux hackers / crackeurs, veux t il bien me dire honnêtement quel pourcentage des internautes qu'il connait sont capables de faire ce qu'il dit ( ou d'y consacrer le temps nécessaire) ?
dans mon cas , mon site est un site "perso" avec des commentaires et des photos de famille ; mon fils qui est dans le lot et qui a un peu trop la fibre "sécuritaire", ne veux pas qu'un employeur à qui il adresse un CV de candidature, ou son chef de service, puisse aller voir notre site avec une curiosité malsaine ( nota : chacun peut avoir pour moins de 10 euros / an un site à son nom , genre www.durand.fr ). Moi, des PDG , des DRH , des Chefs qui savent faire ce que décrit MalaLam, je n'en connais aucun (en moins de 60 secondes, car au dela, le temps c'est du fric pour eux).
Donc, non, je ne suis pas un hacker. Mais des gars capable de hacker un site mal protégé, j'en connais un bon paquet (ici même, pour commencer...beaucoup ont largement le niveau. Et peu, heureusement, l'envie). Dans les différentes boîtes dans lesquelles j'ai bossé, crois-moi, un gros pourcentage des développeurs étaient largement capable de hacker un site mal protégé. De toute façon, je le répète, ça n'a rien de compliqué : quelqu'un qui veut hacker et qui est un débutant trouvera assez de "ressources" sur le net pour y parvenir.
Il peut paraître stupide de protéger un site perso, et pourtant, même un site perso n'est pas à l'abri. Récemment, quelqu'un de ma connaissance s'est fait hacké son forum, un forum perso, juste pour lui et quelques potes. Ok, rien d'important de perdu...mais un forum foutu en l'air néanmoins. Et ce forum était un forum bien connu, même pas un truc perso : un package largement diffusé.
Pour faire suite à ce que tu dis à propos de ton fils : nous avons embauché il y a peu, un webmaster. Nous avons reçu des tonnes de cv, avec des tonnes d'exemple de sites. Ton fils a raison : nous avons écarté immédiatement ceux qui faisaient "amateurs", et ceux qui présentaient des failles de sécurité évidentes. Et il y en avait...beaucoup. Et oui, je faisais quelques tentatives (sans rien casser évidemment), pour voir. C'est important, la sécurité...surtout quand on bosse pour des clients.
Bref...pour la dernière partie de ton message : mon PDG le prendrait très mal si un site que l'on a développé pour un client se faisait hacker...donc, mon équipe et moi faisons en sorte que cela n'arrive pas. Et un truc à compprendre, c'est que développer un système d'identification et de protection meilleur que celui présenté ici ne prend pas plus de temps que de développer ce système-ci. Plus de connaissances, sans aucun doute. Mais pas plus de temps. Donc pas plus d'argent...(enfin, salaires mis à part : mais là, un problème se pose : je n'"embaucherai pas quelqu'un qui développe un système de protection comme celui-ci...et à mon sens, un développeur web débutant doit être capable de développer un meilleur système sans problème : utiliser des sessions, avoir des bases en htaccess, et des bases en failles de sécurité et un minimum quand on veut se lancer dans ce métier).
-1- une des bases du crashing lorsque l'on veut s'attaquer à un site OU A UN SERVEUR (le crashing ne concerne pas que les sites les débutant on tendance à l'oublier) c'est de retrouver tous les sites hébergés sur le même serveur... ainsi si l'on arrive à compromettre le plus faible on pourra surement s'attaqué aux autres par la suite... sans parler de fouttre le serveur en l'air ou de le détourner de son utilisation première... c'est comme s'attaquer à une banque en passant par le mur mitoyen du magasin d'a coté... rappelez vous que c'est le maillon le plus faible qui détermine la solidité d'une chaîne
-2- bien souvent on se dit "je fais un site perso pour moi et mes potes pas besoin d'une forteresse" et un beau matin on se retrouve avec le site crashé... les black hat s'attaquent aux sites sans distinction de taille, de niveau de developpement, etc... au contraire les script kiddies manquant de connaissance s'attaqueront au premier petit site venu presentant des faiblesses de sécurité c'est bien plus simple et surtout à leur portée pour flatter leur égo de boutoneux... il y a peu j'ais une copine qui s'est fait défacer son site pièce par pièce par des script kiddies (ils y sont pas allé de main morte en plus) pourtant cette jeune fille adorable s'il en est n'avait qu'un peitit site tenant plus du blog que du gros site à contenu, elle y présentait ses photos, quelques écrits litéraires rien de bien mirobolant aux yeux du premier venu... ça n'a pas empeché ces %ùµ*£$§ de profiter d'une faille de vérification utilisateurs et d'une faille (que dis je un gouffre) XSS... .. .
-3- minime mais non moins important quand on developpe un script il faut essayer de faire en sorte que ce dernier soit fonctionnel en l'occurence pour ce code c'est loin d'être le cas puisqu'il faut se relogger à chaque chargement de page... imaginez vous tapez le texte d'un article coté admin vous soumettez l'article et en guise de soumission vous vous retrouvez avec la page de connection votre texte étant perdu... c'est un peu con... de même si à chaque fois que vous changez de page vous devez vous reconnecter je vois pas trop l'interet... .. .
@ tchaOo°
mais il n'y manque que une seule chose à mon gout :
puisque ce script PHP est trop simpliste , et peut faire détruire le site par quelques voyous d'internet "boutonneux" comme dit l'un , ou pouvons nous trouver (par exemple sur Code Source) un vrai et complet exemple d'une protection correcte et efficace, disons sans faire dans la ligne maginot, un truc Deux étoiles au Guide Michelin de Mrs Kankrelune et malaLam ?
Il n'y en a aucun qui me vienne à l'esprit, là.
Ca ne veut pas dire qu'il n'en existe pas sur CS : je ne connais pas tous les codes par coeur...
De plus, un tel système dépend pas mal de la structure du site, et de la base de données associée (moteur, car on ne fera pas attention aux même choses que l'on utilise un moteur mysql ou un moteur mssql par exemple, et structure : niveaux de droits, etc).
Il serait sans aucun doute utile de réaliser un tuto recensant les différentes façons de développer un bon système d'identification et de sécurisation. Exhaustif. Mais un code générique...je ne suis pas très sûr. Si je trouve le temps dans la journée, je montrerai quelques exemples.
Je cherche dans le fouttoir qui me sert de pc et si vraiment tu la veux je la posterais... .. .
@ tchaOo°
Mais s'il y a une possibilité de controle d'identification sérieux entièrement en PHP ( donc sans devoir créer une BD et mettre mySQL en route rien que pour ça ...) je préfèrerais !
Ensuite quand le gars se connecte, tu récupere son ip et la valeur md5 dans le cookie et tu le compare à la base de donnée, si c'est juste, alors tu lui donne l'accès.
C'est pas mal sécurisé car le gars, doit gerer l'ip forwarding et toruver la séquence contenue dans le cookie du gars qu'il hack pour pouvoir avoir accès à chaud (cad quand la personne est déjà connecté) sur un acces admin.
Maintenant t'es pas a l'abri de celui qui connait le pseudo/pass :p
Donc la meilleur sécu d'un acces authentifié, c'est les autres pages ;)
Bon, ca c'est mon point de vue, ptete que les autres pensent autrement.
Ca peux etre interessant de partager son idée sur la sécurité et quelle methode (algorithmique) vous employerez pour un acces tres sécurisé :)
@ tchaOo°
j'aimerais savoir comment ont peut utilisé à plusieurs membres.
Merci
Lord Erik
soit tu crée une table dans ta base de données avec user et passwd et tu vérifie que l'user et le passwd correspondent bien par rapport au formulaire ou tu demandera ces infos (attention au sql injection !)
(c'est dit rapidement !)
J'ai trouvé un truc super simple ici : http://webastuce.fr/scripts.php
Installé en 2 minutes, ça marche au poil !