情况概述
今天登陆在腾讯云服务器上搭建的 Mysql 数据库,发现数据库被黑了,黑客提示十分明显。
Mysql 中只剩下两个数据库,一个是 information_schema
,另一个是黑客创建的 PLEASE_READ
,其中有一张 info
表,内容如下:
Info
: Your DB is Backed up at our servers, to restore send 0.2 BTC to the Bitcoin Address then send an email with your server ipBitcoin_Address
: 1F33LEJjdphD6YpaonNCHejwLcgkgDGQW9Email
: mysqldata@mail2tor.com
显然,我这是遇到比特币敲诈了。我的数据在别人的服务器里安然的躺着,需要向黑客支付 0.2 比特币才有可能恢复。按照当前的汇率,0.2 比特币大约为 1400 人民币,这是我第一次遇到网络敲诈,金额还不小。
所幸数据库里并没有值钱的数据,就当是送给黑客了,不过 数据库安全问题 引起了我的注意。
安全措施
由于缺乏必要的安全措施和备份机制,数据库中原有的数据均已丢失。为了恢复到 Mysql 初始的状态,重新安装了 Mysql 数据库,并且重新创建原先存在的数据库,同时,为了防止再次被黑客入侵,对 Mysql 进行了一些安全配置。
- 禁用或限制远程访问。若允许远程访问,需要确保特定主机才拥有访问权。
- 对用户进行合理授权,应用程序中最好不要直接使用
root
用户。 - 限制打开网络 socket,此时仍可以建立与 Mysql 服务器的本地连接。
- 对用户进行合理授权,应用程序中最好不要直接使用
[mysqld]
skip-networking
- 强迫Mysql仅监听本机。
[mysqld]
bind-address=127.0.0.1
- 更改
root
用户的登录名称和密码。 - 移除测试数据库和匿名账户及废弃的账户。
- 禁用
LOCAL INFILE
。
[mysqld]
set-variable=local-infile=0
- 删除历史命令记录。
cat /dev/null > ~/.bash_history
cat /dev/null > ~/.mysql_history
- 及时安装 Mysql 安全补丁。
- 使用
chroot
限制 Mysql 运行环境。 - 自动定期备份数据库。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于