Hola a Todos!!
Me dieron un login de acceso a un sistema el cual tiene distintos niveles de acceso..el codigo es el siguiente:
<?php
if(isset($_SESSION['miUsuario'])){include_once"menuUser.php";}
else{
//me fijo si estan definidos nombre y clave
if(!isset($_POST['nombre'])||!isset($_POST['clave'])){ include_once"login.php";
}else{
//Reviso los datos q vienen del formulario x POST
if ($_POST['nombre']!="" || $_POST['clave']!=""){
$user= $_POST['nombre'];
$pass=$_POST['clave'];
$sql = "SELECT * FROM usuarios WHERE username='$user' AND password='$pass' ";
include_once("conexion.php");
$qry = mysql_query($sql);
}
else{
//si hay error de contraseña Informo y vuelve al formulario Login
echo" <h3 class='letras_login'> Contaseña Incorrecta </h3> <br />";
include_once"login.php";
//Si tienen contenido lo comparo con la Base de Datos
$sql="select * from usuarios where username='$_POST[nombre]'and estado='activo'";
include_once"conexion.php";
$rs=mysql_query($sql);
//chequeo si hay un error en $rs (Consulta SQL)
if(!$rs){echo "Error en la Consulta SQL";}
else{
//si es Mayor a cero hay un usuario
if(mysql_num_rows($rs)>0){
$passFormulario=$_POST['clave']; //guardo la contraseña q viene del formulario
$passBD=mysql_result($rs,0,2); //guardo la contraseña q esta en la BD
$idUsuario=mysql_result($rs,0,0); //guardo el ID del usuario q esta la BD
$nivelUsuario=mysql_result($rs,0,3); //guardo el nivel q esta en la BD
//$avatar=mysql_result($rs,0,8); //guardo el nivel q esta en la BD
//Comparo las pass, si coinciden INICIO SESION
if($passFormulario==$passBD){
//creo la variable de sesion : usuario y su Nivel
$_SESSION['miUsuario']=$_POST['nombre'];
$_SESSION['miNivel']=$nivelUsuario;
$_SESSION['idCliente']=$idUsuario;
//$_SESSION['miAvatar']=$avatar;
/*
$miLog1 = new log('1',$idUsuario,'0');
$miLog1->insertarlog ();
*/
mysql_query($sql) or die ("Error en la inserción!");
//incluyo el Modulo q tiene el Menu de Usuario
include_once"menuUser.php";
}else{
//si hay error de contraseña Informo y vuelve al formulario Login
echo" <h3 class='letras_login'> Contaseña Incorrecta </h3> <br />";
include_once"login.php";
}
}else{
//si No hay usuarios con ese nick Informo y vuelve al formulario Login
echo"<h3 class='letras_login'> Usuario y/o Contaseña Incorrecto o inhabilitado </h3> <br />";
include_once"login.php";
}
}
}
else{
//Si el form esta vacio Muestro el Login
include_once"login.php";
}
}
}
?>
En este codigo necesito aplicar ataques de INYECTION,XSS Y CSRF (asumo que quien me brinde su ayuda sabe de que estoy hablando), nos dijeron que podemos hacerle modificaciones al codigo para hacer funcionar nuestros ataques pero probe de varias maneras y no logro resolverlo...
Agradezcco desde ya su colaboracion!!
Saludos!!
Aclaracion: Los include no modifican nada la ideas es trabajar sobre los if, esos archivos son mas referidos al diseño del sitio