2025 獬豸杯全国电子数据取证竞赛 题解 - XD Forensics Wiki
https://forensics.xidian.edu.cn/writeups/XieZhi2025/

2025 獬豸杯全国电子数据取证竞赛 题解
¶
Author
NoahTie@猫猫啥也不会 & kakahuote
Reference:
獬豸杯2025取证总结
比赛信息
¶
说明
检材下载连接等信息来自于
DIDCTF 平台
, 感谢 DIDCTF 平台提供的比赛资料与在线练习环境.
写在前面
¶
kakahuote:
不愧是经常做题的人出的题目，水平确实高，题目质量相比去年也提升了很多很多
美中不足的是我没看见案件背景，感觉就是纯粹的做题
这份 WP 是我在看过 kakahuote 的 WP 的基础上完成的, 手机和计算机取证部分大体上参考了 kakahuote 的思路, 主要解决了一下服务器取证部分的问题. 这些问题大致包括:
k8s 服务无法正常运行
检材内 k8s 的证书已经过期(有效期至 2025 年 6 月).
我们做这套题的时间在 25 年 9 月, 因此遇到了先前发布的 WP 中都没有遇到过的证书过期问题.
服务器中 Nginx 的异常
服务器上安装了 2 个不同的 Nginx, 分别来自 yum 安装和宝塔面板下载.
2 个 Nginx 均通过服务自启动, 并且绑定了相同的端口
终于看到学弟/学妹的取证 WP 了, 可以安心退休了
检材信息
¶
容器密码:
}2N|n_yxdt!G/Ru}|_zdn$@?6@CD8E
容器 SHA-256: c0b92e1d2f22e26b9ff22451e49e23cd5b6e7ec4a4b655f4698d36faf162d8b0
手机取证
¶
先跑一遍应用识别, 看到一些可能有价值的应用:
1 登录的直播 APP 的 IDX 是
¶
答案
35248617
设备上安装的第三方影音类应用有以下 3 个:
在"烟雨直播"的应用数据目录
/data/com.huodong.yanyu/databases/miao.db
中的表
login
中存储着用户信息, 其中
idx
字段的值为"35248617":
2 目前直播的等级名称是
¶
答案
一无所有
在小米相册(com.miui.gellery)的略缩图缓存目录
/media/0/Android/data/com.miui.gallery/files/gallery_disk_cache
中, 存在相关图片:
可通过火眼的特征分析 + 图片文本识别工具快速找到该文件:
3 地图中哪座山有绝望坡
¶
答案
武功山
在上题提到的缓存目录中, 存在一张疑似地图应用的截图:
其中提及到"武功山绝望坡".
使用 FTK Imager 挂载手机镜像(实际上是 Tar 压缩包, 也可以直接解压)后, 将挂载目录导入到 XWF 中, 使用同步搜索查找"绝望坡":
发现在白马地图(com.xykj.yydhbmdt)的应用数据目录的
/data/com.xykj.yydhbmdt/shared_prefs/share_data.xml
中保存着相关数据.
4 手机的历史 SIM 卡中, 中国电信卡的 IMSI
¶
答案
460115143563428
5 1 月 22 日 16:40 的会议号
¶
答案
312-118-071
还是在上述缓存目录中:
该会议号也可以在网易会议的应用数据目录
/data/com.netease.yunxin.meeting/shared_prefs/FlutterSharedPreferences.xml
中找到:
在 XWF 中使用同步搜索搜索时间"2025-01-22 16:40"可以找到网易会议的日志:
6 网易会议中个人会议号
¶
答案
267-982-3922
还是在上述缓存目录中:
或者在上题中找到的日志文件中, 搜索关键字"meetingNum"可以找到"privateMeetingNum":
这里还可以找到用户的手机号码: 17751125237.
7 记账软件中一共记了几笔
¶
答案
4
还是在上述缓存目录中:
在"记账小能手"(com.csmountainaccount.easy)的应用数据目录
/data/com.csmountainaccount.easy/databases/app_database.db_manager
中的表
AccountRecordBean
中也可看到相关信息:
8 谁给了机主 100000
¶
答案
勇哥
还是在上述缓存目录中:
或者在上题提到的数据库中也可以看到.
9 聊天软件是否需要手机号登录
¶
答案
否
手机上安装的聊天软件是"盒子 IM", 应用描述中提供了开源地址
https://gitee.com/bluexsx/box-im/
:
该应用是一个可由用户部署服务端的 IM, 注册时并不需要手机号:
在"盒子 IM"的应用数据目录的
/data/com.boxim/database/DCStorage
数据库中可以看到存储在本地的一些数据:
可以看到数据库也只保存了用户名和口令, 而没有保存手机号码.
10 机主的给对方的活有多少钱
¶
答案
3 万
接上题, 在数据库的表
DC_137389484_storage
中可以看到用户的聊天记录:
11 机主的手机号
¶
答案
17751125237
参考手机取证第 6 题.
或者在安卓电话服务的数据目录
/user_de/0/com.android.server.telecom/files/phone-account-registrar-state.xml
中也可以找到:
12 手机的 IMEI1 后四位
¶
答案
1055
13 手机上一共有几个地图软件
¶
答案
3
筛选"地图导航"分类的应用:
计算机取证
¶
1 网卡的 Mac 地址
¶
答案
00-0C-29-BF-8B-30
计算机安装了 2 张物理网卡:
使用 Windows Registry Recovery 查看
ROOT\ControlSet001\Services\Tcpip\Linkage
中存储的网卡绑定顺序:
按照网卡绑定的先后顺序, 名称为"Intel(R) 82574L Gigabit Network Connection"的网卡为默认网卡:
仿真之后通过
IPCONFIG
指令也能看到默认网卡信息.
2 系统内部版本号
¶
答案
18363
3 计算机系统开机密码
¶
答案
WAXD9128@
便签中保存着 1 条口令:
重新分析浏览器数据, 可以验证该口令正确.
4 分析计算机检材中手机流量包, 黑客虚拟身份的密码
¶
答案
a12345678
在 Documents 目录里发现了 1 个 NOX 的备份
backup20240625153457.npbk
和 1 个 Fiddler 的 Session Archive(.saz) 文件
dididi.saz
:
用 Fiddler 加载 saz 文件, 搜索"login"关键字, 在命中流量包中可以看到 POST 请求中包含了明文的口令:
5 分析计算机检材中手机流量包, 黑客人员使用的夜神模拟器的手机型号
¶
答案
SM-G955N
搜索"device"关键字, 在命中流量包中看到向 NOX 的服务器发送的模拟器信息:
6 分析计算机检材中手机流量包, 黑客看视频的时间是几月份
¶
答案
5
搜索"video"关键字, 在命中流量包中看到访问了抖音的流量包,
mime_type
为
video_mp4
:
7 分析计算机检材中手机流量包, “天戮宇宙”出自哪个小说平台
¶
答案
起点中文网
搜索"book"关键字, 在命中流量包中看到从
bookcover.yuewen.com
获取到的小说封面图片:
该域名为"阅文"的域名, 小说封面上包含的 LOGO "起点中文网"是其旗下的小说网站.
8 在手机模拟器中勒索软件 APK 包的 sha256 值
¶
答案
340bd211955996c5d62bbde94a0bed4eb3a7965b23af52114991bca02346928e
导出在 Documents 目录中找到的 NOX 备份文件, 将其解压即可得到模拟器的 vmdk 虚拟磁盘文件. 使用 FTK Imager 打开虚拟磁盘, 并导出
/app/com.fankes.tmoreplus-1/base.apk
.
该模拟器备份文件与 2024 年龙信杯计算机取证部分的 NOX 模拟器备份文件一致. 解题思路参考
龙信杯 2024 题解 #19
.
9 接上题, 勒索软件的解锁密码
¶
答案
anzhuo.com
解题思路参考
龙信杯 2024 题解 #20
.
10 signed_xz.exe 程序 SHA1 后 6 位
¶
答案
8955b1
非预期的方法
由于出题人使用 VMware Tools 传输文件, 导致其缓存目录
/Users/TTT/AppData/Local/Temp/vmware-TTT/VMwareDnD
下存在题目中提及的文件.
在该目录下还存在后续题目中提及到的"澳门新葡京 APK".
通过火眼的特征分析可以找到一个加密容器, 火眼识别为 TrueCrypt 容器, 实际上为 VeraCrypt 容器:
在桌面上的
mm.txt
中可以看到关于"容器密码"的提示:
挂载加密容器时使用
新建文本文档.txt
作为密钥文件. 在容器内找到
signed_xz.exe
文件:
计算其 SHA1 哈希:
11 signed_xz.exe 程序中的函数名为 curl_version_info 的函数地址
¶
答案
0x004393c0
用 DIE 加载该应用程序. 查看导出表, 在其中找到
curl_version_info
函数, 其相对虚拟地址(RVA)为
0x000393c0
:
查看内存映射, 看到应用程序的基址(虚拟地址)为
0x00400000
:
函数地址为
基址 + RVA = 0x004393c0
.
12 signed_xz.exe 程序中节名为 .reloc 的虚拟地址
¶
答案
0x035b5000
查看节信息, 看到
.reloc
节的虚拟地址:
13 澳门新葡京 APK 包名
¶
答案
com.suijideszzuiji.cocosandroid
在
Partition 4
目录中存储着 1 个 APK 文件
base.apk
, 将其导出并用雷电 APP 智能分析工具加载:
在 JEB 中查看 Manifest:
14 澳门新葡京 APK 是否加固, 加固则说明是什么加固
¶
答案
未加固
15 澳门新葡京 APK 是否会往手机的 SD 卡中写入数据, 若是则该权限的名称为
¶
答案
android.permission.WRITE_EXTERNAL_STORAGE
在 JEB 中查看 Manifest:
16 澳门新葡京 APK 登录的 api 地址
¶
答案
https://168js.bvocftd.com/ky188/member/memberManager/login
在 JEB 中查看 Manifest, 找到应用的 MainActivity:
JEB 里面静态找了半天, 没找到硬编码或者在配置里的 API. 装模拟器里发现服务居然没挂, 于是开始用雷电抓包.
看到请求的调用栈才反应过来, 这个应用是用 cocos2d 做的, 游戏的核心代码应该都在加密过的 JSC 文件里. 解密很容易, 只需要导出 APK 包中的
Libraries/arm64-v8a/libcoco2djs.so
, 使用 IDA 加载并找到
.rodata
段. 段的起始位置附近就有 xxtea 的密钥:
使用
OEDx/cocos-jsc-endecryptor at v2.0
对
assets/src/project.jsc
进行解密.
在
Userservice
中可以看到关于"login"的字符串:
接着在
t.Login
函数中看到调用
l.default.aesPost
函数, 参数之一为
a.httpGameUrls.LOGIN_URL
:
声明
l
与
a
的代码为:
JavaScript
var
s
=
e
(
"./BaseService"
),
a
=
e
(
"./NetStr"
),
c
=
e
(
"../config/DataConfig"
),
l
=
e
(
"../common/HttpClient"
)
找到声明
NetStr
的位置, 在其中找到
LOGIN_URL
:
接着找到声明
HttpClient
的位置, 并找到
aesPost
函数:
可以看到该函数对数据进行
AES-ECB
加密之后, 再调用
HttpClient.request
函数发起请求. 再定位到
request
函数的位置:
可以看到, 后续请求实际传递的 url 是
"" + e.baseUrl + n
, 再定位到
baseUrl
在
setBaseUrl
函数中被设置:
setBaseUrl
在
APIUtil.setCDNAPI
函数中被调用:
setCDNAPI
函数在
APIUtil.validUrl
函数中被调用:
并且类的构造函数中对 Url 进行了构造
"https://"+t[0]+":"+t[1]+"/"+o.default.COMPANYCODE+"/"
:
validUrl
函数在
APICDN.getValidDomainFromCDNS
函数中被调用:
如何确定应用调用了哪个类来获取 CDN?
validUrl
一共在 4 个类中被调用, 分别是
APICDN
,
APIDynamicCDN
,
APIAliyunBucket
,
APINormalDynamicCDN
. 在
ReverseService
类的
sortUseMethod
函数中可以看到, 应用会获取
HallConfig.default.APIMETHODS
字符串并以
,
分割, 生成数组.
接着试着按照
APIMETHODS
中的顺序, 依次调用几个获取 CDN 的类, 并测试是否有可用的 CDN:
可以在
HallConfig.default
中看到
APIMETHODS
为
c,d,n,a
, 因此应用将先使用
APICDN
类检测存活 CDN:
参考下述的测试, 可以判断该类会成功获取到存活的 CDN.
该函数对
allCDNs
数组中的所有成员进行检测(
s.APIUtil.validUrl
), 并返回通过检测的成员.
allCNDs
数组的构造位于
APICDN
的构造函数中, 通过对
o.default.APICDNS
字符串按
,
进行分割得到. 而
o
被声明为
Hallconfig
:
找到
HallConfig
的声明, 在其中的
default
中找到
APICDNS
和
COMPANYCODE
字符串:
实际登录时访问的 API 会随 CDN 站点的可访问性变化而变化. 本 WP 编写时(2025 年 9 月 24 日)实际测试结果为:
因此, 应用登陆时将使用第一个可用的 CDN 地址
168js.bvocftd.com
, API 地址为
https://168js.bvocftd.com:443/ky188/member/memberManager/login
17 澳门新葡京 APK 其中关于腾讯运营商的服务留存的 QQ 号
¶
答案
1108221663
在 MainActivity
org.cocos2dx.javascript.AppActivity
中硬编码了一个常量
qqAppId
:
18 请分析 Navicat 中 root 用户的密码
¶
答案
(=3]Zwjt#W
服务器取证
¶
对 3 个镜像都进行仿真, 将 VMware 的 NAT 虚拟网卡的网段设置为与服务器内静态 IP 一致的
192.168.2.0/24
.
3 个虚拟机的信息如下:
HostName
IP
k8s-master
192.168.2.199
k8s-node1
192.168.2.200
k8s-node2
192.168.2.201
k8s 服务的修复参考第 4 题. Nginx 冲突的解决参考第 6 题.
1 该集群主节点操作系统版本
¶
答案
7.9.2009
仿真之后查看
k8s-master
主机的
/etc/redhat-release
文件:
其实 3 个镜像中系统版本一样.
2 该集群创建时间(GMT)
¶
答案
2024-06-24 11:28:12
尝试用
kubectl
查看集群信息, 但遇到了报错:
通过
kubeadm
查看证书信息, 发现证书已过期:
修证书比较复杂, 可以参考博客文章:
k8s-kubeadm证书过期续订解决方法_kubeadm certs renew all-CSDN博客
. 这里采取一种更取巧, 更简单的办法: 修改系统时间.
可以在仿真之后手动修改系统时间, 也可以在使用火眼仿真时, 在高级设置中指定系统时间:
查看节点信息, 此时 2 个节点依然处于 NotReady 状态:
查看节点详情, 其中的"CreationTimestamp"即为集群的创建时间:
3 该集群共有多少个命名空间
¶
答案
7
查看命名空间详情, 共有 7 个命名空间:
4 该集群所有命名空间内总共有多少个 pod
¶
答案
16
接下来需要修复 2 个 Node 节点才能获取到全部的 pod 信息.
查看 2 个 Node 节点的 kubelet 服务状态, 发现服务无法正常启动:
看一下 kubelet 的日志, 报错是 kubelet 不能在开启 SWAP 的情况下运行:
看一眼
fstab
, 发现
/www/swap
开着:
手动注释掉这一行, 再通过
swapoff -a
指令关闭 SWAP. 再启动 kebulet 服务:
回到 k8s-master 主机查看节点信息, 发现 k8s-node1 已经就绪了:
对 k8s-node2 进行相同的操作:
查看 pod 的详情:
5 请给出该集群所使用的 cni 网络插件及其版本
¶
答案
flannel-cni-plugin:v1.0.0
在 pod 信息中查找"cni-plugin":
6 打金平台的后台登录地址跳转文件
¶
答案
WIdbdgd1Us.php
在 k8s-node1 的
/root
目录中可以看到宝塔面板的
install.sh
:
查看面板信息 & 修改面板密码:
可以看到 2 个宝塔面板都运行着网站:
启动 Nginx 并修改本地的 Hosts 文件, 使用域名访问这几个网站时发现报 404 或 502.
Text Only
192.168.2.201   www.jiaoyoumf0up.com
192.168.2.201   www.jiedai0rmr.com
192.168.2.200   www.gsjksu2kig.com
192.168.2.200   www.mtbtsdafda.com
执行
nginx -t
发现服务器上还安装了一个 nginx, 与宝塔的 nginx 冲突:
宝塔的 nginx 是:
删除服务器上多余的 Nginx:
在
/www/server/nginx/sbin
目录下手动启动 Nginx
./nginx -c conf/nginx.conf
之后就可以使用域名正常访问网站了:
查看每个网站的 Nginx 日志, 找到后台地址.
www.gsjksu2kig.com
的后台地址是
/admin.php/login/index.html
:
访问之后从标题可以看出来是个 CMS:
www.mtbtsdafda.com
的后台地址原本是
/admin.php
, 后来被修改为访问
/WIdbdgd1Us.php
后重定向至
/index.php/systemlogined/login/index
:
可以在网站源码根目录中找到该 php 文件:
访问之后看到后台标题为"打金平台后台管理":
www.jiaoyoumf0up.com
的后台地址是
/admin/login.php
:
网站标题叫"盲盒", 应该是个抽奖网站的后台:
www.jiedai0rmr.com
的后台地址是
/admin.php
之后重定向到
/index.php?g=Admin&m=Index&a=login
:
这个不知道是个啥:
7 打金平台密码加密算法
¶
答案
sha1
在网站源码的
APP/Module/Index/Action/LoginAction.php
中可以看到处理用户登录的代码, 其中对密码的处理为:
8 打金平台中"13067137585"用户的累计产量
¶
答案
43853.21
在网站源码的
APP/Module/Systemlogined/Action/LoginAction.class.php
中可以看到处理管理员登录的代码:
数据库的用户名 & 密码信息可以在宝塔的数据库配置页面或网站源码根目录的
App/Conf/config.php
中找到. Navicat 连接数据库, 找到存放管理员信息的表
ds_user
:
将 admin 的密码修改为
sha1("123456") = 7c4a8d09ca3762af61e59520943dc26494f8941b
, 之后使用 admin/123456 登录后台:
后台的"会员管理"页面中可以搜索到用户, 但没有显示"累计产量":
再次修改用户表
ds_member
中的密码:
登录用户平台, 在"会员中心"页面看到"累计产量"信息:
9 打金平台会员组最高溢价比例
¶
答案
1.70
在后台的"会员等级列表"页面中可以看到:
10 打金平台会员推广人数最多的会员姓名
¶
答案
李奕欣
后台有树状图, 但是访问时超了 PHP 的内存上限. 按理来说不该超的, 怀疑是代码有问题.
直接去数据库看, 用户有一个字段
parent
应该是推广人的用户名. 写个 SQL 语句统计一下:
找到用户的展示姓名:
11 打金平台最早一次备份数据库的时间（Asia/Shanghai）
¶
答案
2019-05-06-22:27:57
在后台的"操作日志"页面, 查看最早的记录, 其中最早的"备份数据库"在"2019-05-06 22:27:57":
12 金瑞币（JINRUI COIN）平台图片上传平台是哪种类型
¶
答案
阿里云OSS
上题中后台标题为"JRB CMS"的网站应该是金瑞币平台. 从宝塔的数据库配置里面拿到用户名和密码:
连接数据库之后, 看到管理员表:
密码长度看起来是 MD5, 不知道有没有加盐. 在网站源码的
application/admin/controller/Login.php
中看到有关登录的代码:
数据库中保存的是
MD5(password+salt)
,
salt
从 ThinkPHP 的配置文件中获取. 在
application/config.php
中可以找到
salt
的设置:
本来想把密码改成 123456 的, 结果发现原始密码就是 123456:
使用 admin/123456 登录后台:
不过后台中并没有关于图床的配置, 或许要在源码或配置文件里找. 在源码中搜索关键字"upload"之后, 在
application/api/config.php
中找到了相关设置:
13 金瑞币平台手机直充接口
¶
答案
http://op.juhe.cn/ofpay/mobile/onlineorder
后台中也没有相关信息, 还是在源码或配置文件中找. 在源码中搜索关键字"recharge"之后, 在
extend/driver/oilrecharge/JuheOil.php
中找到了 API 接口 URL:
14 金瑞币平台后台登录地址
¶
答案
http://www.gsjksu2kig.com/admin.php/login/index.html
参考服务器取证部分第 6 题.
15 金瑞币平台中密码加密盐值
¶
答案
GWwRbMOPJYZCvE5gembG
参考服务器取证部分第 12 题.
16 其中金瑞币平台中交易手续费是百分之多少
¶
答案
36
在后台的"系统配置"->"基础配置"页面中:
17 其中金瑞币平台中目前有几种充值方式
¶
答案
3
充值管理中可以看到 3 中方式:
18 二号集群节点有源代码的网站目录有几个（正在运行的除外）
¶
答案
3
本题存疑
官方答案为 3, 但实际上检材中存放了源码的目录不只 3 个.
在宝塔的数据目录中,
wwwroot
中有 1 个未在运行的网站源码目录,
backup/file_history/www/wwwroot
中有 2 个未在运行的网站源码目录:
但在
/opt
目录下还有几个目录中有网站源码:
19 二号集群节点 memcached 端口
¶
答案
11211
memcached 的服务信息:
或者查看网络信息:
20 盲盒平台中余额最多的用户
¶
答案
ZrAuyMT1tyo
在网站的源码
/admin/login.php
中可以看到, 使用了 ajax 请求向
ajax.php
提交登录请求:
在
/admin/ajax.php
中可以看到登录时验证了
md5(name+pwd)
与通过
config("pwd")
的值相等:
config
函数在
/core/function.php
中定义, 从数据库的
pre_config
表(
pre_
将被替换成
config.php
中设置的表名前缀)中读取数据:
数据库的连接信息可在宝塔面板或
/config.php
中找到:
需要注意, 该数据库位于 k8s-node1 服务器上.
修改管理员密码:
另外, 还需要在
/config.php
中将
host
的值修改为 k8s-node1 服务器的 IP 地址, 之后网站才能连接上数据库. 使用 admin/123456 登录后台:
在"用户列表"页面中可以看到用户的账号和余额:
21 盲盒平台可选二级域名有多少
¶
答案
13
在"系统管理"->"盲盒信息配置"界面可以看到已设置的二级域名有
9yx.xyz,3rd.xyz,g3h.xyz,524f.fit,ze3g.fit,xa43.fit,scv4g.xyz,cxse.xyz,ddv.xyz,awev.xyz,eafv.fit,zxee3g.fit,zsefg.fit
:
22 盲盒平台的支付密钥
¶
答案
LDAWIucAQQGQp7rEE4nSlvzQMKZxTxopqNSwjL8PcAIBbVLJkh
在后台的"系统管理"->"在线支付配置"页面中可以看到:
23 盲盒平台中拥有分站的用户名
¶
答案
5432ef
在后台的"分站列表"页面中可以看到:
24 借贷平台(
www.jiedai0Rmr.com
)中验证码发送接口域名
¶
答案
http://api.smsbao.com/
在源码的
/App/Lib/Action/Admin/IndexAction.php
中看到处理管理员登录的代码:
在
/App/Lib/Action/Admin/CommonAction.php
中看到
getpass
函数的定义:
其中的
C("cfg_adminkey")
位于
/App/Conf/config.db.php
中. 数据库的连接信息可以在宝塔面板或
/App/Conf/config.db.php
中看到:
需要注意, 该数据库位于 k8s-node1 服务器上. 在数据库的
admin
表中可以看到管理员信息:
修改
admin
用户的密码:
使用 admin/123456 登录后台:
不过短信平台的地址不在后台中, 需要在源码/配置文件中寻找. 在
/App/Conf/config.site.php
中可以看到短信平台的一些设置:
在源码中搜索
cfg_sms_user
, 发现发送短信的函数调用了
Smsapi
:
在
/App/Lib/Class/Smsapi.class.php
中看到发码平台的 URL:
25 借贷平台后台登录密码的加密算法中共使用了多少次 hash 函数
¶
答案
4
见上题.
26 接上题, 借贷平台中后台登录的密码额外加密字符串
¶
答案
26XBAmVMs+n_
见上题.
27 借贷平台中一共有多少借款订单
¶
答案
43
在后台的"借款列表"界面可以看到:
28 借贷平台中"包玉莲"的收款账号
¶
答案
6227001756030083140
在后台的"借款列表"页面可以找到该用户:
点击"查看打款信息"即可看到银行卡信息:
29 借贷平台中贷款最大限额是多少
¶
答案
350000
在后台的"系统设置"页面中可以到设置的贷款最大金额:
30 请综合该集群一共有多少个网站数据库
¶
答案
7
在宝塔中可以看到数据库的 root 用户密码:
使用该密码连接位于 k8s-node1 的数据库, 除 MySQL 的默认数据库外有 7 个数据库:
