今天登陆在腾讯云服务器上搭建的Mysql数据库,发现数据库被黑了,黑客提示十分明显。
Mysql中只剩下两个数据库,一个是information_schema
,另一个是黑客创建的PLEASE_READ
,其中有一张info
表,内容如下:
1、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 ip 2、Bitcoin_Address: 1F33LEJjdphD6YpaonNCHejwLcgkgDGQW9 3、Email: mysqldata@mail2tor.com
显然,我这是遇到比特币敲诈了。我的数据在别人的服务器里安然的躺着,需要向黑客支付0.2比特币才有可能恢复。按照当前的汇率,0.2比特币大约为1400人民币,这是我第一次遇到网络敲诈,金额还不小。
所幸数据库里并没有值钱的数据,就当是送给黑客了,不过 数据库安全问题 引起了我的注意。
由于缺乏必要的安全措施和备份机制,数据库中原有的数据均已丢失。为了恢复到Mysql初始的状态,重新安装了Mysql数据库,并且重新创建原先存在的数据库,同时,为了防止再次被黑客入侵,对Mysql进行了一些安全配置。
1、禁用或限制远程访问。若允许远程访问,需要确保特定主机才拥有访问权。 2、对用户进行合理授权,应用程序中最好不要直接使用root用户。 3、限制打开网络socket,此时仍可以建立与Mysql服务器的本地连接。
[mysqld]
skip-networking
强迫Mysql仅监听本机。
[mysqld]
bind-address=127.0.0.1
1、更改root用户的登录名称和密码。 2、移除测试数据库和匿名账户及废弃的账户。 3、禁用LOCAL INFILE。
[mysqld]
set-variable=local-infile=0
删除历史命令记录。
cat /dev/null > ~/.bash_history
cat /dev/null > ~/.mysql_history
1、及时安装Mysql安全补丁。 2、使用chroot限制Mysql运行环境。 3、自动定期备份数据库。