普通视图

安全意识、记一次MySQL勒索

2024年8月12日 01:00

遭遇 MySQL 勒索

表现为,打开 MySQL 或 MongoDB 时,发现数据库被删除了,多了一个 RECOVER_YOUR_DATA 表,其中的内容为:

All your data is backed up. You must pay 0.0131 BTC to 1JjzBZ8MdxFpecDgp24FrrHwQmzXXM4hTr In 48 hours, your data will be publicly disclosed and deleted. (more information: go to https://is.gd/dayuwi)

After payment send mail to us: dzen+2xh5w@onionmail.org and we will provide a link for you to download your data. Your DBCODE is: ABCDEF

上述 DBCODE 每人的都不同,但比特币钱包地址相同,经过查阅,地址 1JjzBZ8MdxFpecDgp24FrrHwQmzXXM4hTr 目前还并未收到任何交易。

比特币勒索套路

Oracle、MongoDB、MySQL 等容易被劫持,删除存储数据,要求支付比特币的赎金。

借助 AI 完成这个程序非常容易,扫描开放端口上的管理员弱口令,要做的是删除数据,并插入勒索消息数据。

对于普通目标,压根不必全表拉取并备份,只要获得几条数据用于验证即可。

我相信很少有做这事的人一单一单手工完成,那样是没有投入产出比的。

千万不要支付赎金

因为支付的结果大概率是没人理你,这样做对于勒索者是最安全的。

解决办法

  1. 寻求专业人士帮助,利用硬盘文件恢复;
  2. 利用数据库 bin log 恢复;
  3. 利用备份恢复;

根因分析

根因:安全意识弱,感觉数据没有那么重要。

防范办法

  1. 永不使用弱口令;
  2. 不在 Internet 公开数据库服务端口;
  3. 如果确实需要公开,则按固定 IP 或受信子网指定可访问 IP,禁止配置允许任何地址的远程连接。

关于遗产代码维护

2024年8月7日 12:00

十七年前的代码

如果有机会维护了十七年前的代码,你一定能学到很多。

我维护的是 Windows 2008 下 PHP 5、MySQL 5、Apache 2.2、Python 3 的代码。

总结了一下,首先需要了解平台规格,运行时最小化支持版本。

Windows 2008

Windows 2008 不算很旧的服务器,毕竟我还用过 Windows 2000、Windows 2003。

准备环境,开始十分不方便,依次下载 7-zip、Firefox、Python,一个带高亮的文本编辑器,然后方便多了。

Windows 2008 在 Python 方面最高支持 Python 3.4。

安装 pip,会提示下载一个旧版本的 get-pip.py,使用旧版本 get-pip.py 后,终于可以安装一些旧版本包。

但需要编译的包,还会依赖旧版本的 VSBuild 环境。

某些旧版本包,国内镜像不支持,估计是没有全部镜像的缘故。

整理这些复杂的依赖关系,就够喝一壶了。

而 PHP 5、MySQL 5、Apache 2.2 相对就好一些,我还能在我本机找到一套配置好的,其中包含了 Zend 优化和 XDebug。

这些源代码估计还在,但若要凑上相互配合一套,要自己编辑时,准备环境这件事来说,拿给小白,没几周是不够的。

预计十年后,我也许还会维护升级这些代码,若有时间,放到虚拟机中更好,可以不受硬件限制的启动,而直接进入环境。

最大的心得

之所以现在还能维护,主要是因为之前我也是亲自配置的,具有经验,另外,多年之前考虑过维护,作了少量当时环境的打包。

若让一位无经验的人配合 AI 完成这些,也会有不少坑。

❌