Hola a todos.....qisiera porfavor informacion sobre temas de seguridad de sesiones en PHP, osea la forma en q puedo hacer mas segura una sesion de usuario.......en una aplicacion q hic me di con la desdichada sorpresa q habia ingresado gente sin pasar el login , use el siguiente controlador de sesion pero claro no es suficiente:<?php
session_start();
if($_SESSION['usuario']!='permitido'){
session_destroy();
@header('location:index.php');}
?>
ese controlador esta para las paginas a las q solo los usuarios puedn acceder previo logeo......lo q ocurre es q la pagina q programe tenia una sección de examens y en cada pagina salia el nombre del usuario...."Bienvenido Juan Perez has iniciado....etc" , y cuando el usuario daba su examen c guardaban sus nombres, contraseña, nota, fecha....pero habia registros d notas sin nombres ni contraseñas, solo la nota y la fecha como si lo hubiera dado un fantasma.....use el sgte script para validar la sesion:<?php
include("conexionBD.php");
conectarse();//funcion q me concta a la BD
//***********************
$codUsu=$_POST['codigo'];
$dni=$_POST['dni'];
$nivel=$_POST['nivel'];
session_start();
$sql="select * from usuarios where clave='".$codUsu."' and dni='".$dni."' and nivel='".$nivel."'";
$rs=mysql_query($sql);
@$row=mysql_num_rows($rs);
if($row==1)// es dcir q existe tal registro
{ $_SESSION['usuario']='permitido';
@header('location:menu_usu.php');
$_SESSION['apellidos'] = mysql_result($rs,0,2);
$_SESSION['nombres'] = mysql_result($rs,0,3);
$_SESSION['nivel'] =$nivel;
$_SESSION['dni'] =$dni;
$_SESSION['codUsu'] =$codUsu;
$_SESSION['hora']=date('H:i');
}
else { session_destroy();
@header('location:loginUsu.php');
}
?>
por favor q otras herramientas puedo usar para q la sesion sea segura y no vulnerable
Les agradeceria mucho su ayuda