勒索 数据库 血与泪的教训
今日上网站一看,发现从数据库获取的数据没有展示,查看f12的网络情况,发现回报500错误,后端发生错误?
打开服务器后台查看后端日志,发现是数据库连接失败。
之前为了图方便开放 了服务器的3306端口,让本地可以直接使用图形化数据库工具连接服务器的数据库。
然后使用本地的图形化工具连接,提示密码错误!
直接懵逼
从服务器登录mysql,提示密码错误。
当时想着难道是其他的服务影响到了数据库?也不应该呀,那里来的程序能改数据库的密码?
打开唯一存在的一个数据库,里面的所有数据表全部不在了,只剩下了一张表“README”
……
打开表一看:
LOCK TABLES `README` WRITE;
INSERT INTO `README` VALUES (1,'I have backed up all your databases. To recover them you must pay 0.01 BTC (Bitcoin) to this address: 1A7afsVJGN3gCnib9bx8rmF5K6rCyivMgY . Backup List: huistarapps. After your payment email me at sqlrecover934@onionmail.org with your server IP (服务器ip地址) and transaction ID and you will get a download link to your backup. Emails without transaction ID and server IP will be ignored. ','1A7afsVJGN3gCnib9bx8rmF5K6rCyivMgY');
UNLOCK TABLES;
……
提取一下细节:
I have backed up all your databases.
To recover them you must pay 0.01 BTC (Bitcoin) to this address: 1A7afsVJGN3gCnib9bx8rmF5K6rCyivMgY .
Backup List: huistarapps.
After your payment email me at sqlrecover934@onionmail.org
with your server IP (服务器ip地址) and transaction ID and you will get a download link to your backup.
Emails without transaction ID and server IP will be ignored.
裂开……
原委
打开了服务器的3306端口,和数据库远程访问权限,数据库设置密码过于简单(原密码为000000),使得被暴力破解直接让其登录mysql数据库,盗取所有数据,并且清空数据表,留下一张readme后翩然离去。
损失
因为还是在学习阶段,只放置了关于个人网站的一个小游戏的数据,而且在本地有小游戏数据的备份,只是丢失了所有用户进度。
警醒
- 暴露的数据库,密码设置切勿简单
- 对于互联网上的数据,还是提高警惕,勿放置个人的隐私文件
- 经常备份数据库内的数据,永远不知道什么时候就没了,考虑使用脚本完成日常备份至本地
- 对于不必要的端口还是关闭了,以防止未被允许的访问,不知道什么时候就没了,考虑使用脚本完成日常备份至本地
- 对于不必要的端口还是关闭了,以防止未被允许的访问