SECURISATION D'UNE ZONE

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 15 nov. 2008 à 20:10
 Utilisateur anonyme - 19 nov. 2008 à 14:19
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/48459-securisation-d-une-zone

Utilisateur anonyme
19 nov. 2008 à 14:19
La POO c'est la programmation orientée objet et c'est ce qu'il faut quand on souhaite programmer de manière plus organisée et réutilisable. Tu as des cours à cette adresse :

http://phpdebutant.org/article42.php
liptibilly Messages postés 15 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 27 juin 2011
19 nov. 2008 à 13:52
quesque la POO???
Utilisateur anonyme
18 nov. 2008 à 16:21
Lut liptibilly :)

Vu le nombre de commentaires tu est bien courageux de tous les prendre en compte. Essayes de te renseigner au niveau de la POO en PHP5 - ce serais un super bon début pour un débutant.

Bonne prog et à+,
akh
liptibilly Messages postés 15 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 27 juin 2011
18 nov. 2008 à 16:16
desoler pour cet amalgam, je vais modifier mon code tout de suite, je ne suis qu'un debutant et quand j'écrit mes codes, je ne me soucie pas de la lisibilité car je le tape d'abord parce que j'an ai besoin et comme j'aii une bonne mémoire, je me souvient des chose à ouvrir, à fermer, nouveau post dans 6 jours... si tout vas bien
cs_lucas74 Messages postés 18 Date d'inscription mercredi 16 mai 2007 Statut Membre Dernière intervention 10 février 2009
17 nov. 2008 à 19:35
Salut, l'idée est bonne mais :

1 - ton code PHP est mélangé à du HTML deprecated
2 - De ce fait il n'est pas "modulable" donc inutilisable
3 - dans ton fichier connection.php, tu hash en md5 $_POST password sans te soucier de son existence. Si le serveur qui héberge le script est bien configuré en ce qui concerne la gestion des erreurs (ce qui semble ne pas être ton cas), alors on a le droit à un E_NOTICE à chaque requête ne comprenant pas POST password.
4 - dans logout.php, tu affiches un message à la déconnexion ce qui est complètement inutile, puis tu rediriges avec Javascript ce qui ne fonctionne pas partout et peut paraitre "bête" sachant qu'un header('location: http..'); est beaucoup plus simple et ergonomique.
5 - Ton code, mal indenté, comporte des boucles inutiles (else { ceho ''; } ce qui ne sert à rien du tout, alourdit le script et contribue à son illisibilité).
6 - Pour vérifier la connexion, ce que tu fais, c'est pas l'idéal. Niveau perfs, c'est même risqué.
Déjà, admettons que l'on souhaite conserver ton fonctionnement, à chaque page visitée, tu liste TOUT les membres et compares à CHAQUE FOIS si les données correspondent. Tu pourrais simplement faire la requête avec à l'intérieur les logins et mots de passe (avec un WHERE) puis vérifier si la requête retourne un résultat avec mysql_num_rows($query).
Si tu voulais vraiment faire des économies, tu utiliserais la technique que je viens de proposer uniquement à la connexion, mais après tu vérifierais uniquement l'existence des sessions (non falsifiables car stockées sur le serveur !).
7 - alors le die(mysql_error()) c'est bien mais à retirer à tout prix avant la mise en production surtout pour la connexion à la DB. Tu peux révéler des informations sensibles au client.
8 - Pas de code HTML dans des echo çà ne sert à rien, et c'est moins lisible. En plus on ne peux pas bénéficier de la coloration syntaxique.
9 - D'ailleurs tu ne sépares aucune couche : MySQL, PHP et HTML sont complètement mélangés :/
Utilisateur anonyme
17 nov. 2008 à 11:12
Bonjour, malgré l'idée intéressante de ton script, aucune classe ou module réutilisable.

L'intérêt de cette classe aurait pu être la gestion en session ou cookies de l'état sécurisé mais même là tu ne traites pas le problème de vol de sessions.

L'intérêt de ton code est limité car pas utilisable en l'état - l'idée de faire une brique de gestion de la sécurité d'une application est parcontre super.
azqsazqs Messages postés 83 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 28 novembre 2010
16 nov. 2008 à 10:53
J'ai regardé 3 pages, voici ce que j'ai noté:

je comprend pas pourquoi il y a autant de pages. une seul page index.php c'est mieux, surtout au niveau sécurtité, là tu multiplie les page avec un accès a la bdd, et donc tu multiplie les risque d'être craqué (personnellement j'ai toujours une page publique avec accès a la bdd , le reste se fait à l'administration).

Certaines page (lien2, cryptmd5, logout) ont des codes si réduit que c'est dommage d'en faire des pages séparé, surtout que les contenus php de canevas et de index ont peu de différences

dernière chose, mais tout le monde ne le sait pas, pour les utilisateurs de free, il faut mettre un dossier "sessions" la racine du serveur, je te conseil de le mettre dans toutes des applications utilisant des sessions, ca évite qu'on te rappel en te disant "ca marche pas !"
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
15 nov. 2008 à 20:10
le md5 n'est pas une methode de cryptage mais de hashage.