Sécurité Login

LamontColeman
Invité n'ayant pas de compte PHPfrance

16 mai 2006, 20:59

Bonjour,


Je viens à me demander si ma façon de programmer ma partie membre est t-elle sécurisée, voilà comment je fais :
<?php
include 'config.php';

if( $_POST['login'] == $admin_login and $_POST['pass'] == $admin_pass ) {

session_start();
			
$_SESSION['connexion'] = 'ok';
			
header('Location: page1.php');

} else {

// on redirige vers le formulaire de connexion

}

?>
sachant que les variables $admin_login et $admin_pass sont inclues dans config.php

Au niveau des sessions est-ce sécurisé ?
Sachant que dans page1.php je fais un truc du genre :
<?php
$session_start();
if( $_SESSION['connexion'] == 'ok' ) {
// bien logué !
}
?>

j'en viens à me demander si quelqu'un de mal intentionner peut "simuler" une variable de session sur un site ?

Merci d'avance de vos réponses :)

Eléphant du PHP | 440 Messages

16 mai 2006, 21:33

HEllo ,

Ton code parait sympa disons que le vrai probleme c est que comme ça n'importe qui a acces a ton fichier config.php !

Tu devrais le mettre dans un dossier 'Admin' par exemple et proteger ce dossier par htaccess !

Sinon je pense que c est sécurisé !
C'est en faisant des erreurs et en osant demander de l'aide qu'on apprend ! Il n'est pas ridicule de ne pas savoir !

ViPHP
ViPHP | 1380 Messages

16 mai 2006, 21:36

Si ton mot de passe admin est bien choisi, tu peux dormir sur tes deux oreilles.

Les fichiers de sessions sont crées, sur le serveur, par les scripts php.

A la réflexion, si tu veux te protéger d'une attaque d'un bot qui essayerait la force brute en simulant l'envoi d'un formulaire de login, tu peux temporiser le login (sleep()) ou bannir l'IP après x tentatives de login.

Evidemment, si tu as un accès ssh avec comme mot de passe root, ton serveur est mort. Et, toi, si tu mets un mdp root comme ça, il vaut mieux que tu te mettes au tricot ou à l'élevage de chèvres dans les Causses. :wink:

Il reste, bien sûr, à éviter les failles connues et bien documentées d'injections SQL et autres exploits PHP.
ripat

Petit nouveau ! | 2 Messages

17 mai 2006, 13:41

Merci à vous 2 pour ces réponses,

Dans mon fichier config.php, ça donne :

<?php
$admin_login = '****';
$admin_pass = '****';
?>

à partir d'un serveur distant, si quelqu'un effectue :

<?php
include 'monsite.com/config.php';
echo $admin_login;
?>

En théorie, ça ne devrait pas marcher ?!

Concernant les injections dans les requetes SQL, à prioris, chez un hebergeur connu, c'est déjà sécurisé ?!

ViPHP
ViPHP | 2144 Messages

17 mai 2006, 14:20

Concernant les injections dans les requetes SQL, à prioris, chez un hebergeur connu, c'est déjà sécurisé ?!
non ça dépend de ton code.
Un petit tutorial (Google t'en dira plus )
http://thierrylhomme.developpez.com/php ... /#sessions