Page 1 sur 1
questions de débutants
Posté : 16 déc. 2013, 22:31
par Géryko
Bonsoir,
1) code PHP est-il visible par d'autres personnes ?
Débutant, je ne suis pas sûr d'avoir bien compris.
Le code php déposé chez mon hébergeur est parait-il non visible. Est-ce bien vrai ?
Si la réponse est Oui, il est donc en parfaite sécurité.
Il doit bien y avoir des petits malins qui y parviennent ? (outils spéciaux)
Comportement des aspirateurs de sites ?
- Réponses brève svp
2) Dans la configuration suivante :
- je me trouve sur un page ayant nécessité un "nom d'utilisateur" et un "mot de passe".
- Je quitte cette page en cliquant "fermer la session" qui pointe sur une page.php
session_start();
$_SESSION = array(); session_destroy();
header("location: un autre site");
exit ;
- il suffit de cliquer "retour arrière" ou de se reconnecter sur le site, de sélectionner la page
protégée sans devoir re-saisir le "nom d'utilisateur" et le "mot de passe", ce qui me choque.
Le nom d'utilisateur et mot de passe ont donc été mémorisés dans le navigateur ?
Où se trouve le problème ?
Que faudrait-il faire pour éviter cela ?
Dans un 1er temps, quelques idées et une piste pourraient suffire.
Bien à vous,
Merci
Re: questions de débutants
Posté : 17 déc. 2013, 08:19
par xTG
1) Un aspirateur de site ne verra rien de plus qu'un navigateur internet, à savoir les réponses HTTP dont le contenu est en HTML (pas de code PHP).
Sans exploiter de faille (faille d'upload/include/...) il n'est pas possible de voir ton code PHP.
2)
il suffit de cliquer "retour arrière" ou de se reconnecter sur le site,
S'il se reconnecte il saisie son nom d'utilisateur et son mot de passe non ?
Comment identifies-tu qu'un utilisateur est connecté ?
Re: questions de débutants
Posté : 17 déc. 2013, 13:31
par sirakawa
2) Dans la configuration suivante :
- je me trouve sur un page ayant nécessité un "nom d'utilisateur" et un "mot de passe".
- Je quitte cette page en cliquant "fermer la session" qui pointe sur une page.php
session_start();
$_SESSION = array(); session_destroy();
header("location: un autre site");
exit ;
- il suffit de cliquer "retour arrière" ou de se reconnecter sur le site, de sélectionner la page
protégée sans devoir re-saisir le "nom d'utilisateur" et le "mot de passe", ce qui me choque.
Le nom d'utilisateur et mot de passe ont donc été mémorisés dans le navigateur ?
Où se trouve le problème ?
Que faudrait-il faire pour éviter cela ?
Je croyais avoir deux pistes:
1) configurer le navigateur, mais ça ne se fait pas de la même manière pour tous, pour qu'il oublie ce qui a été tapé.
2) au lieu de faire
<input type ='text' value ='' />
faire:
<input type ='text' value ='*****' />
mais la deuxième re résoud que si la page est rechargée, ce qui n'est pas le cas avec le bouton marche-arrière
En ajoutant du javascript onclick sur les deux champs qui les vident tous les deux, peut-être..
3) il me semble qu'il est possible d'invalider ce bouton (avec du javascript)
Re: questions de débutants
Posté : 17 déc. 2013, 14:42
par Mazarini
Je n'ai pas vérifié, mais au lieu de faire un header() pour le redirect, tu peux faire une page avec le redirect codé en html. Peut être que la session sera alors bien détruite.
Re: questions de débutants
Posté : 17 déc. 2013, 15:36
par xTG
Je n'ai pas vérifié, mais au lieu de faire un header() pour le redirect, tu peux faire une page avec le redirect codé en html. Peut être que la session sera alors bien détruite.
Il n'y a pas de raison que la session ne soit pas détruite sur session_destroy (sauf si le header cache un message d'erreur).
Re: questions de débutants
Posté : 18 déc. 2013, 14:52
par Géryko
Bonjour à tous, (vous n'avez pas traîné, merci)
-------------
Réponse pour xTG
Point 1 : hormis la faille (faille d'upload/include/...), le code est donc bien protégé.
Si cette faille existe toujours "il y en a" qui ne doivent pas s'en priver ?
Point 2 :
Et non, il ne doit pas re-saisir son "nom d'utilisateur" et son "mot de passe". C'est bien ce que je trouve anormal.
Il faudrait peut-être lui vider son historique avant de détruire la session ?
ou il reste quelque chose sur le serveur ?
-----------
Réponse pour sirakawa
Je retiens surtout son point 3)
-----------
Réponse pour mazarini, xTG ,et sirakawa
Je confirme que la session est bien détruite (vérifier par ailleurs " if (!isset($_SESSION['xxxxxxx']))" )
Merci à tous. Bien cordialement.
============================
PS :
J'ai vu sur ce forum quelqu'un qui avait eu le même problème en 2009 ? Je n'arrive plus à le retrouver pour tenter de le joindre.
Sa solution, utiliser : location.replace()
j'ai donc testé : <script>
location.replace(page)
</script>
mais je n'arrive pas compléter (page).
Au mieux, je voudrais retrouver la page d'accueil de mon site index.php. Ou simplement effacer l'historique du navigateur.
Un exemple svp ?
Re: questions de débutants
Posté : 11 févr. 2014, 00:12
par Géryko
Bonsoir à tous,
Mon problème (point 2) n'est pas résolu mais je vais en rester là pour l'instant.
Je verrai cela plus tard car je suis débordé en ce moment.
Merci à tous
Re: questions de débutants
Posté : 15 mars 2014, 14:52
par Géryko
Bonjour,
Concernant le point 2
J'avais oublié de préciser que je me trouvais sur des pages protégées par htaccess.
- Je quitte cette page en cliquant "fermer la session" qui pointe sur une page.php
session_start();
$_SESSION = array(); session_destroy();
header("location: un autre site");
exit ;
Je ferme mon navigateur, qui supprime par défaut l'historique, cookies ect ...
je le reprends et je me reconnecte :
Mon identifiant et mot de passe NE sont PLUS actifs !
OUF ! C'est déjà ça.
Donc c'était mémorisé dans mon PC
Avant de détruire la session il faudrait peut-être effacer l'historique, cookies ect ... du PC
Géryko