<?php session_start(); include_once "herramientas.php"; guardarBitacora("Sesión terminada [" . $_SESSION["user"] . "]"); session_unset(); session_destroy(); header("Location: ../");
$app->redirect("/bibliotecaseguridad/inicio"); }); $app->post("/userRegist/", function () use($app, $bd) { $user = $app->request->post("user"); $pass = $app->request->post("pass"); $nombre = $app->request->post("nombre"); $apellidos = $app->request->post("apellidos"); $rol = $app->request->post("rol"); $consultaResultante = $bd->prepare("INSERT INTO usuario(matricula,rol,intentosFallidos) VALUES('{$user}','{$rol}',0)"); $consultaResultante->execute(); $consultaResultante = $bd->prepare("INSERT INTO persona(matricula,nombre,apellidos) VALUES('{$user}','{$nombre}','{$apellidos}')"); $consultaResultante->execute(); $consultaResultante = $bd->prepare("INSERT INTO pass(matricula,password,fecha) VALUES('{$user}',sha1('{$pass}')," . date("Ymd") . ")"); $consultaResultante->execute(); $solicitud = $app->request(); guardarBitacora("Se ha registrado el usuario [" . $user . "]", $solicitud->getIp()); echo "<script>alert('El usuario se registro correctamente')</script>"; $app->redirect("/bibliotecaseguridad/inicio"); }); $app->run(); // function function guardarBitacora($mensaje, $ip) { date_default_timezone_set("America/Mexico_City"); escribirArchivo("bitacora.log", date("Y-M-D H:m:s") . " " . $mensaje . " " . $ip, "a"); } function escribirArchivo($nombre, $cadena, $tipo) { $file = fopen($nombre, $tipo); fwrite($file, $cadena . PHP_EOL); fclose($file);
<?php session_start(); include_once "herramientas.php"; include_once "ManejadorMySql.php"; $user = $_POST["user"]; $pass = $_POST["pass"]; $manejadorBD = new ManejadorMySql(); $sql = "SELECT u.id_tipoUsuario " . "FROM usuario u, pass p " . "WHERE u.id_usuario='" . $user . "' and p.id_pass=u.id_pass and p.pass=sha1('" . $pass . "')"; $resultadoConsulta = $manejadorBD->realizarConsulta($sql); unset($manejadorBD); if ($resultadoConsulta) { switch ($resultadoConsulta->fetch_row()[0]) { case 1: $_SESSION["alumno"] = true; break; case 2: $_SESSION["admin"] = true; break; default: header("Location: ../front/login.php"); exit; } guardarBitacora("Inicio de sesión. [{$user}]"); header("Location: ../front/principal.php"); exit; } guardarBitacora("Tipo de usuario no registrado en la bd." . [$user]); header("Location: ../front/login.php"); exit;
<?php @session_start(); include_once "baknd/herramientas.php"; include_once "baknd/ManejadorMySql.php"; $_SESSION["ip"] = getIP(); $bd = new ManejadorMySql(); $result = $bd->realizarConsulta("SELECT id FROM bloqueoip WHERE ip='" . $_SESSION["ip"] . "'"); unset($bd); if ($result->num_rows > 0) { echo "Por seguridad hemos bloqueado esta direccion ip"; guardarBitacora("Intento de acceso con ip bloqueada"); session_unset(); session_destroy(); exit; } //$_SESSION["ip"]= getIp(); //$result
break; case 2: $_SESSION["user"] = $user; $_SESSION["admin"] = true; break; default: $_SESSION["intentosIp"] = $_SESSION["intentosIp"] + 1; guardarBitacora("{" . $_SESSION["{$user}"] . "} Intento de inicio de sesión [{$user}]"); //echo $_SESSION["$user"]; $_SESSION["{$user}"] = $_SESSION["{$user}"] + 1; if ($_SESSION["{$user}"] > 2) { $bd = new ManejadorMySql(); $sql = "UPDATE usuario set intentosFallidos=1 WHERE id_usuario='{$user}'"; $bd->realizarConsulta($sql); unset($bd); //$_SESSION["$user"]= 0; } if ($_SESSION["intentosIp"] > 8) { $bd = new ManejadorMySql(); $sql = "INSERT INTO bloqueoip(ip) VALUES('" . $_SESSION["ip"] . "')"; $bd->realizarConsulta($sql); unset($bd); } header("Location: ../front/login.php"); exit; } $_SESSION["{$user}"] = 0; $_SESSION["intentosIp"] = 0; guardarBitacora("Inicio de sesión. [{$user}]"); header("Location: ../front/principal.php"); exit;
echo "La contraseña nueva ya fue usada alguna vez."; } else { $resultadoConsulta = $bdManager->realizarConsulta("SELECT pass, antiguedad FROM pass WHERE persona_id='" . $_SESSION["user"]->getCorreo() . "' ORDER BY antiguedad DESC LIMIT 3"); if (count($resultadoConsulta) >= 3) { $resultadoConsulta = $bdManager->realizarAccion("DELETE FROM pass WHERE persona_id='" . $_SESSION["user"]->getCorreo() . "' ORDER BY antiguedad ASC LIMIT 1"); } $bdManager->realizarAccion("INSERT INTO pass VALUES('" . $_SESSION["user"]->getCorreo() . "', sha1('" . $newPass . "'), NOW())"); echo "La contraseña se cambió correctamente."; guardarBitacora("<" . $_SESSION["user"]->getCorreo() . "> Cambio de contraseña. ", $app->request()->getIp()); } } else { echo "La contraseña actual que proporsionó no existe."; } } else { echo "Tu sesión fue terminada."; guardarBitacora("<" . $_SESSION["user"]->getCorreo() . "> Sesión expirada antes de cambio de contraseña. ", $app->request()->getIp()); } echo "<br><a href='logout'>Regresar a principal</a>"; }); /* ********************* FUNCIONES ********************* */ function escribirArchivo($archivo, $string, $tipo) { $file = fopen($archivo, $tipo); fwrite($file, $string . PHP_EOL); fclose($file); } function guardarBitacora($string, $ip) { date_default_timezone_set("America/Mexico_City"); escribirArchivo("bitacora.log", date("Y-m-d H:m:s") . " " . $string . " " . $ip, "a"); }
<?php session_start(); include_once "herramientas.php"; include_once "ManejadorMySql.php"; $user = $_POST["user"]; $pass = $_POST["pass"]; $confPass = $_POST["confPass"]; $manejadorBD = new ManejadorMySql(); if ($pass == $confPass) { $sql = "SELECT u.id_tipoUsuario " . "FROM usuario u, pass p " . "WHERE u.id_usuario='" . $user . "' and p.id_pass=u.id_pass and p.pass=sha1('" . $pass . "')"; $resultadoConsulta = $manejadorBD->realizarConsulta($sql); unset($manejadorBD); if (!$resultadoConsulta) { $sql = "INSERT INTO usuario(id_usuario,intentosFallidos,id_tipoUsuario,id_persona,id_pass) VALUES ('9193',0,..........)"; $resultadoConsulta = $manejadorBD->realizarConsulta($sql); guardarBitacora("Se a registrado el usuario. [{$user}]"); header("Location: ../front/principal.php"); exit; } guardarBitacora("Ya existe este usuario" . [$user]); header("Location: ../front/login.php"); exit; } else { echo "<script>alert('No coinciden las contraseñas')</script>"; }