我有一个网站,我使用会话进行登录。在我的管理员的每个页面中,我都有一个检查用户是否登录的检查器。我有这个代码
if(!$_SESSION['loggedin'] && !$_SESSION['userid'])
{
header('Location:login.php');
}
else
{
//proceed loading the page
}
现在发生了什么,有人在搞乱我们的网站。他/她在网站上输入了一些粗俗的文字,比如......所有不尊重的词语,因为该网站可供公众访问,所以令人沮丧。我相信用户名和密码被黑客入侵了。因此,我要求所有管理员用户更改所有密码,并添加了一个记录器来监控谁将更新网站内容。我记录了登录用户的用户 ID 及其帖子。更改密码后,同样的事情再次发生,内容被黑客或任何人更新。
我检查了我的日志,黑客的用户 ID 是 0。这怎么可能,我该如何阻止他?让我想知道他做了什么,因为在页面顶部的情况下,如果 $_SESSION['userid'] 没有值,它应该将它们重定向到登录页面。
目前我将网站下线,因为黑客越来越糟糕。我能够找出它的IP地址。
这是我的用户认证
$user=trim($_POST['username']);
$pass=trim(stripslashes($_POST['password']));
$sql="SELECT * FROM users WHERE user='$user' AND pass='$pass'";
$qry=mysql_query($sql) or die (mysql_error());
if( mysql_num_rows($qry) )
{
$row=mysql_fetch_assoc($qry);
$_SESSION['userid'] =$row['userid'];
$_SESSION['loggedin']=1;
header('Location: welcome.php');
}
else
{
header('Location:login.php?error=1');
}