【发布时间】:2023-03-20 01:24:02
【问题描述】:
我的网站和我使用一个托管服务托管的所有其他网站昨天都被黑客入侵了。来自其他主机的其他站点仍然完好无损。发生这种情况时我已登录,因此我能够恢复我的网站,但是 phpMyAdmin 已被篡改。在旧数据库连接失败后,我创建了一个新数据库,为它创建了一个新用户,并授予了所有权限。但是当我进入 phpmyadmin 页面时,我运行了以下查询;
SELECT USER(),CURRENT_USER();
结果;
用户()
当前用户()
cpaneluserid@localhost
cpaneluserid@localhost
SELECT user,host,password FROM mysql.user;
结果;
1142 - 表 'user' 的用户 'cpaneluserid'@'localhost' 拒绝 SELECT 命令
SELECT user,host,password FROM mysql.user WHERE user='' AND host='localhost';
结果;
1142 - 表 'user' 的用户 'cpaneluserid'@'localhost' 拒绝 SELECT 命令
这清楚地表明另一个用户,即 cpanel 用户名正在访问数据库,而不是我为其设置权限的那个。
这是我的连接文件;
error_reporting(E_ERROR);
session_start();
$dbserver = "localhost";
$dbroot = "user";
$dbpwd = "xxxxxxxxxx";
$dbname = "dbname";
$link = mysqli_connect("$dbserver", "$dbroot", "$dbpwd","$dbname");
if(mysqli_connect_errno($link))
{
echo 'Failed to connect to database: '.mysqli_connect_error();
}else { }
当我打开包含该文件的页面时,它会显示; 用户 'user'@'localhost' 的访问被拒绝(使用密码:YES)。
我需要尽快解决这个问题。提前致谢。
【问题讨论】:
-
您可以更改用户名和密码吗?
-
你是什么意思?我之前改过旧数据库的用户名和密码,然后我创建了新的,让我再改一下看看。
-
我刚刚做了,但结果相同。
-
什么意思?您现在无法访问您的数据库?即使在手动过程中?
-
是的。我也很惊讶。
标签: php mysql phpmyadmin