前几天刚帮一个朋友重建了他的网站,是个人的博客站,也没多少流量,php+mysql,没想到今天忽然打不开了。
登陆上服务器一看,嚯嚯,数据库被删除了,简单猜测了一下,估计是mysql的简单密码被爆破了。
从前端进行hack比较难,因为做了端口转发,nginx负载,docker再隔离一层,哈哈(别问我为什么个人网站都用这么复杂的架构)。
遇到了一些坑,记录以及提醒下自己,下次碰到了如何快速解决问题。
先排查问题之后,直接进入数据库查看库和表是否正确
mysql> show databases; +---------------------+ | Database | +---------------------+ | information_schema | | Z_README_TO_RECOVER | | mysql | | performance_schema | +---------------------+ 4 rows in set (0.00 sec) mysql> use Z_README_TO_RECOVER; mysql> show tables; +-------------------------------+ | Tables_in_Z_README_TO_RECOVER | +-------------------------------+ | RECOVER_YOUR_DATA | +-------------------------------+
原先的数据库wordpress被删除了,留下来一个 Z_README_TO_RECOVER 库,
里面只有一个表:RECOVER_YOUR_DATA ,查看下内容,勒索0.1BTC,晕倒~~~第一反应是,这小破站居然如此值钱??
mysql> select * from RECOVER_YOUR_DATA;
下面的内容,比特币地址已经被我抹除掉了,可以看看勒索的内容:)
擦,0.1BTC,小站如果如此值钱,请立刻打给我,我卖掉它,奈何个人小站而已,别说3万人民币,估计300人民币都没人感兴趣。。。
所以放弃不切实际的暴富梦,老老实实恢复数据吧(备份是个好习惯)。
mysql的root用户,密码换一个暴力难破解的。
mysql> SET PASSWORD = password ("@k^kC&pfe$sWEH**sa$#IL*&FyD");
然后因为是docker建立的容器,那么把mysql的3306隐藏起来吧,使用–link参数。