船说 CMS 后台密码忘记怎么找回

chinaz
chinaz 初级会员超兽战士
发布于 2026-10-07 21:02 ·1 浏览 ·0 回复

忘记船说 CMS 后台密码不用重装整站,读完这篇你能用改数据库或临时脚本两种方式,在 10 分钟内重新登进后台,并且知道怎么避免留下安全隐患。

第一步:确认后台地址和数据库信息

这一步要拿到两样东西:后台登录入口、数据库账号密码。

船说 CMS 的后台入口一般是 http://你的域名/admin.php,也有版本是 /admin/ 或 /manage.php,直接在浏览器试这几个地址,能看到登录框就对了。

数据库信息在网站根目录的配置文件里。用宝塔面板的话:网站 → 找到你的站点 → 点「根目录」→ 进入 config 文件夹,找 database.php 或 config.php,用编辑器打开,里面能看到 hostname(一般是 127.0.0.1)、database(库名)、username、password、prefix(表前缀,常见是 cs_ 或 chuan_)。

注意:别把配置文件内容截图发到群里问人,里面有数据库密码,等于把整站钥匙递出去。

第二步:先备份数据库再动手

改数据前必须留后路。宝塔面板左侧 数据库 → 找到对应库 → 点右侧「备份」,等状态变成「成功」再继续。如果用的是 phpMyAdmin,点顶部 导出 → 执行,把 .sql 文件存到本地。

一旦改错字段导致后台彻底打不开,直接点「还原」就能回到现在的状态。

第三步:方法一 —— 在 phpMyAdmin 里直接改密码

打开 宝塔面板 → 数据库 → 对应库右侧「管理」,会跳到 phpMyAdmin 登录页(用户名密码就是上一步查到的)。

左边列表找到管理员表,名字通常是 cs_admin、chuan_admin 或 admin。点进去,找到你的管理员账号那一行,点「编辑」。

看 password 字段(有的版本叫 pwd)的长度:

  • 如果是 32 位十六进制字符(如 e10adc3949ba59abbe56e057f20f883e),说明是纯 MD5。
  • 如果是 40 位或带 $2y$ 开头,加密方式不同,跳到第五步。

确认是纯 MD5 后,把 password 的值改成 e10adc3949ba59abbe56e057f20f883e,这对应明文密码 123456。如果表里还有 salt(盐值)字段,把它清空成空字符串。

点「执行」保存,然后用 admin / 123456 登录后台。

注意:如果表里有 salt 字段而系统用的是 md5(md5(密码).salt) 这种双重加密,光改 password 是登不进去的,必须走第五步确认加密规则。

第四步:找出系统真实的加密方式

第三步没成功,说明加密规则不是纯 MD5。

在宝塔 文件 里进入网站根目录,点右上角「搜索」,搜索内容填 md5(,范围选「文件内容」,搜索目录填 /app/admin/controller 或直接搜整个站点。

重点看登录控制器文件(通常叫 Login.php 或 login.php),找到类似这行代码:

$password = md5(md5($pwd) . $user['salt']);

这句话告诉你加密公式。按公式在本地算一遍新密码的哈希值(可以用在线 MD5 工具算两层),再把结果填回数据库的 password 字段,salt 保持不变。

第五步:方法二 —— 用临时脚本重置

如果你没有 phpMyAdmin 权限,只能传文件,就用这个方法。

在电脑上新建 reset.php,内容如下,把数据库信息换成第一步查到的:

<?php
$conn = new mysqli('127.0.0.1', '数据库用户名', '数据库密码', '数据库名', 3306);
$conn->set_charset('utf8');
$pwd = md5('123456');
$conn->query("UPDATE `cs_admin` SET `password`='$pwd' WHERE `username`='admin'");
echo '影响行数:' . $conn->affected_rows;
$conn->close();

用宝塔 文件 → 上传 传到网站根目录,浏览器访问 http://你的域名/reset.php,页面显示「影响行数:1」就成功了。

注意:这个文件相当于一把没有锁的后门,改完密码后必须立刻在宝塔文件管理里删除它,否则任何人都能重置你的后台密码。

如果第五步的脚本报错或影响行数为 0,说明表名或用户名字段不对,回到第三步用 phpMyAdmin 确认准确的表名(含前缀)和字段名。

第六步:登录后马上收尾

用新密码登录后台,第一件事去 系统 → 管理员管理(不同版本菜单名略有差异)把密码改成你自己的强密码。

然后检查管理员列表里有没有多余的陌生账号,有就删掉。再顺手确认后台入口地址是否需要改个不常见的名字,避免被扫描器盯上。

小结

  • 船说 CMS 后台密码存在数据库管理员表的 password 字段,改这个字段就能重置。
  • 动手前先备份数据库,出问题能一键还原。
  • 纯 MD5 加密直接填 e10adc3949ba59abbe56e057f20f883e(即 123456)即可;带 salt 或 bcrypt 的必须先看源码确认公式。
  • 临时重置脚本用完立刻删除,这是最容易留下的安全漏洞。
  • 重置成功后立即改成强密码,并清理可疑的管理员账号。
版权声明:本文来自 GJ站长论坛《船说 CMS 后台密码忘记怎么找回》
原文链接:https://www.gj0.com/thread-540.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~