Est il securise??

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Est il securise??

par Ajoloca » 18 déc. 2006, 01:16

Re,

Deux petites remarques :
- Tu ne devrais pas utiliser les "short_open_tags" (<?) certains serveurs ne les aceptent pas (et ça devrait être tous).
Utilise <?php

- Concernant ton initialisation de variables.
Ton code
isset($_POST['date']) ? $date=$_POST['date']:$date='';
isset($_POST['hour']) ? $hour=addslashes(trim($_POST['hour'])):$hour='';
isset($_POST['pseudo']) ? $pseudo=strtolower(addslashes(trim($_POST['pseudo']))):$pseudo='زائر';
isset($_POST['passwd']) ? $passwd=addslashes(trim($_POST['passwd'])):$passwd='';
Tu devrais l'écrire comme ceci
$date = isset($_POST['date']) ? $_POST['date']: '';
$hour = isset($_POST['hour']) ? addslashes(trim($_POST['hour'])): '';
$pseudo = isset($_POST['pseudo']) ? strtolower(addslashes(trim($_POST['pseudo']))): 'زائر';
$passwd = isset($_POST['passwd']) ? addslashes(trim($_POST['passwd'])): '';
Pourquoi forcer le pseudo à minuscules ?
Pourquoi interdire l'espace dans le mot de passe?

par Ajoloca » 18 déc. 2006, 00:54

Re,
Et ça donne quoi ?

par Sefrioui » 18 déc. 2006, 00:46

$pseudo = $_SESSION['pseudo'];
j'ai fait l'inverse:
$_SESSION['pseudo'] = $pseudo;

par Ajoloca » 18 déc. 2006, 00:39

Re,

Il faudrait que tu nous donnes un minimum d'infos quand tu postes, on ne peut pas deviner.

Montre globalement ce que tu fais.
Dans la partie du code que tu montres on voie l'utilisation de $_SESSION mais on ne vois pas son initialisation $_SESSION['qq_chose'] = $qq_chose.

par Sefrioui » 18 déc. 2006, 00:35

avec les pseudo frames ca donne les erreurs de session

par Ajoloca » 18 déc. 2006, 00:31

Je l'ai dans index.php:

<? 
session_start();
//inclure les parametres
include ("include_files/config.php"); 
?> 
Il faut le faire dans chaque fichier maître

par Sefrioui » 18 déc. 2006, 00:29

Je l'ai dans index.php:

<? 
session_start();
//inclure les parametres
include ("include_files/config.php"); 
?> 

par Cyrano » 18 déc. 2006, 00:26

Petite précision. Sur un plan théorique, déclarer une variable de session va automatiquement lancer la session. Ça reste théorique et ce n'est pas du tout recommandé.

La possibilité, c'est de mettre le session_start() dans le fichier de configuration qui est inclus dès le départ, il m'arrive de faire ce genre de manip, j'écris le session_start() une seule fois pour toute l'application ;)

par Ajoloca » 18 déc. 2006, 00:23

Bonsoir,

Je n'ai pas regardé le code en détail mais j'ai vu l'utilisation de $_SESSION['pseudo'];
parcontre je n'ai pas vu de session_start() ???

Est il securise??

par Sefrioui » 18 déc. 2006, 00:15

salut,

Je veux savoir si mon domaine d'identification est securise, et pourquoi il n'affiche pas le message "bienvenue $pseudo" il affiche seulement "bienvenue".
<?php
/*
in varchar(20) NOT NULL, // temps de connexion (A)
   out varchar(20) NOT NULL, // temps de deconnexion (B)
   session varchar(20) NOT NULL, // B-A temps passe en une connexion
*/
include ("include_files/config.php");

isset($_POST['date']) ? $date=$_POST['date']:$date='';
isset($_POST['hour']) ? $hour=addslashes(trim($_POST['hour'])):$hour='';
isset($_POST['pseudo']) ? $pseudo=strtolower(addslashes(trim($_POST['pseudo']))):$pseudo='زائر';
isset($_POST['passwd']) ? $passwd=addslashes(trim($_POST['passwd'])):$passwd='';


if ($pseudo == ''){ 
echo $ErrorPseudo1;
echo $ErrorReturn;
}
elseif ($passwd == ''){ 
echo $ErrorPassword1;
echo $ErrorReturn;
}

elseif (strlen($pseudo)<5){ 
echo $ErrorPseudo2;
echo $ErrorReturn;
}

elseif (strlen($passwd)<5){ 
echo $ErrorPassword2;
echo $ErrorReturn;
}

elseif (strrpos($pseudo,' ') > 0){
echo $ErrorPseudo3;
echo $ErrorReturn;
}

elseif (strrpos($passwd,' ') > 0){
echo $ErrorPassword3;
echo $ErrorReturn;
}

elseif(!eregi("^[a-z]+$", $pseudo)){
echo $ErrorPseudo4;
echo $ErrorReturn;
}
/*
elseif (strspn($pseudo,"abcdefghijklmnopqrstuvwxyz0123456789") < 4) {
echo $ErrorPseudo5;
echo $ErrorReturn;
	}
*/
elseif(!eregi("^[a-zA-Z0-9]+$", $passwd)){
echo $ErrorPassword4;
echo $ErrorReturn;
}
else
{
$connection = mysql_connect("$dbhost", "$dblogin", "$dbpassword") or die ($ErrorConnection);
$db = mysql_select_db($db_name, $connection) or die($ErrorDBase);
$sql = "SELECT pseudo FROM $Idara_table WHERE passwd = '". $passwd ."'"; 
$result = mysql_query($sql,$connection) or die ($ErrorSelect);
$num = mysql_num_rows($result); 
if ($num =='1') 
    { 
$pseudo = $_SESSION['pseudo'];

echo 'Bienvenue' .$pseudo;
?>
<a href="page2.php">page2</a>
<?
echo 'vous pouvez se deconnecter [<a href="index.php?rub=Deconnexion" name="logout">ici</a>]';
        }
		}
    else 
    { 
        echo 'desole<br/>'; 
    include ('login_form.php');
	
	mysql_free_result($result);
	mysql_close($result);
}
	?>

merci