绕过会话验证php

时间:2019-03-13 19:30:42

标签: php security

任何人都可以绕过我的登录页面吗 他们是否可以绕过它做得如何

<?php
session_start();

if(isset($_SESSION['login']) == "Owner" or isset($_SESSION['login']) == "admin"){
echo 'login In';
}
?>

1 个答案:

答案 0 :(得分:0)

将登录状态存储在会话变量中当然是一件相当安全的事情,但是,仅凭它本身还不够。如果某人能够访问会话表(在共享托管环境中显然可以这样做)并找到已登录用户的会话ID,则他们可以劫持该会话。因此,需要更高的安全性。 (有关“ Google会话劫持”的内容和执行方式的更多信息,请访问Google

我不是安全专家,但是我做过的一些事情包括记录其IP地址和客户端数据,并在每次页面加载时检查它们。如果它们突然来自其他IP地址或使用其他浏览器,那么我会立即将其注销。但是,正如@Barmar指出的那样,移动设备可以在会话期间更改IP地址,因此这可能不是一个好习惯。

在TLS上使用安全连接(https)也很重要。如果没有,那么中间人可以简单地观察来回的数据包,获取用户名和密码,然后自己登录。