Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1309 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Sécuriser son code et restreindre l'accès à des pages

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Sécuriser son code et restreindre l'accès à des pages

n°1850813
aspirateur
Posté le 13-02-2009 à 13:52:34  profilanswer
 

Salut,
 
Mon niveau en php commence à ne pas être trop mauvais et maintenant je veux progresser sur deux plans:
 
1 - La sécurité de mon code.
Lors d'envoi de données par la méthode GET ou POST, quels sont les vérifications de bases qui doivent être faites?
Y'a t-il un "trou" de sécurité php connu ?  :??:  
Enfin quels sont les risques des sessions et comment sécuriser les sessions?
 
2 - Espace sécurisé
Aujourd'hui pour mes espaces "sécurisés" j'utilise un formulaire d'identification. Le login et le mot de passe sont comparés à ceux présents dans la base "user". Si c'est bon, on affiche, sinon on renvoi à la page d'identification avec un "header()".
Est-ce une bonne méthode, est elle suffisamment sure?
 
Merci de votre aide  :jap:

mood
Publicité
Posté le 13-02-2009 à 13:52:34  profilanswer
 

n°1850827
Profil sup​primé
Posté le 13-02-2009 à 14:23:08  answer
 

Donc tes mots de passes sont en clair ?

n°1850837
fluminis
Posté le 13-02-2009 à 14:33:16  profilanswer
 

donc pour les valeurs en $_POST et $_GET => il faut verrifier leur contenu, ex quand tu attends un nombre tu fais par exemple un ctype_digit, si tu attends une string, tu fais des mysql_real_escape_string, tu verrifies que tu n'as pas de balise html malicieuses (<script> ) etc... bref tu blindes un max pour etre sur que les données que tu sauves en bdd (ou ailleurs) sont bien ce que tu veux qu'un email est vraiment un email (avec une expression reguliere)
 
pour les passwords, il est bon de les stocker crypter dans la bdd
si le user a perdu son password, tu en génère un et lui envoi par mail a l'adresse email utilisée pour l'inscription.
Si par hassard tu as une faille qq part, au moins le mechant n'aura pas les passwords en clair


---------------
http://poemes.iceteapeche.com - http://www.simuland.net
n°1850843
nargy
Posté le 13-02-2009 à 14:36:58  profilanswer
 

Il y a pleins de pièges à éviter...
configuration d'apache: vérifier que les fichiers qui doivent être exécutés le sont, vérifier ceux qui peuvent être lus ou pas
Les requêtes GET et POST et les cookies sont en clair, sauf emploi de https. Ne jamais y mettre du code par exemple, uniquement des données dont la format est vérifié.
Le problème avec GET POST et COOKIE est que l'ordre dans lequel ils sont parsés peut être changé de multiples façons et ils peuvent écraser des variables existantes. N'utiliser les variables globales qu'avec parcimonie et les signaler. Vérifier aussi la config php.
L'emploi de sessions avec PHP dès le début est plus simple. Seul un identifiant de session traîne sur le réseau, les variables sont rangées dans un fichier temporaire.
Pour un login totalement sécurisé, il faut mettre la page en https et contrôler la durée des sessions.
Voir les sessions sur PHP.net.

n°1850849
aspirateur
Posté le 13-02-2009 à 14:45:13  profilanswer
 

Merci pour vos réponses.
 
Les password sont crypter avec la fonction md5() avant d'être stockés dans la base.
Par contre si je veux stocker des mots de passe en clair je fais quoi. Je vous donne un exemple:
 
Je vais devoir utiliser la fonction imap() et je vais avoir besoin du mot de passe de la boite mail. L'idée, c'est que l'utilisateur n'ai pas besoin de saisir son mot de passe.
 
Nargy: tu me parles de la config d'apache, que faut il regarder exactement? Nous avons un serveur dédié donc je peux tout modifier dans la config.

n°1850870
FlorentG
Unité de Masse
Posté le 13-02-2009 à 15:20:29  profilanswer
 

aspirateur a écrit :

Les password sont crypter avec la fonction md5() avant d'être stockés dans la base.


Il ne faut plus utiliser md5, c'est mort. Mieux vaut utiliser un salt + sha-256 par exemple


Message édité par FlorentG le 13-02-2009 à 15:20:36

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Sécuriser son code et restreindre l'accès à des pages

 

Sujets relatifs
[résolu] Connexion/déconnexion d'une BDD en PHP, temps d'accèsPetit code de Ruby
Insérer données PHP dans un PDF[PHP] Problème Array : test de valeurs negatives de suite
Création liste déroulante html avec PHP + XML[RESOLU] [PHP/MYSQL] Problème d'exécution de requete imbriqué
[PHP / MySQL] Saisie de texte et formatage[AJAX PHP]Rediriger dossiers d'un domaine vers la page d'accueil
Quel éditeur utilisez-vous pour coder en PHP ? 
Plus de sujets relatifs à : [PHP] Sécuriser son code et restreindre l'accès à des pages


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR