具有弱密码的公开暴露的 PostgreSQL 和 MySQL 数据库正在被恶意勒索机器人自动清除——该机器人会标记谁付款,谁没有取回他们的数据。
据 Border0 的安全研究人员称,该机器人的来源不明,通常会在暴露于互联网后的数小时内破坏保护不力的数据库。
在涉及在 VM 上运行 PostgreSQL 服务器的重复实验中,同时使用弱凭据(用户:postgres,密码:密码),机器人每天多次成功破坏虚拟数据库。
调查是在程序员阿莫斯·温格(Amos Wenger)在推特上(X-ed?)关于他的数据库在意外暴露他们的Postgres服务器后显然“立即”被赎回之后开始的。
机器人扫描 Internet 以查找 PostgreSQL 和 MySQL 服务器,以暴力破解并检查数据库。
进入内部后,确定可用表的数量,并在使用“DROP TABLE”和“DROP DATABASE”命令删除所有表和数据库之前拍摄数据库的快照。
该机器人还会终止连接到其目标以外的任何数据库的所有后端进程,这可能是为了防止管理员中断攻击。
造成损害后,会留下一张赎金票据,指示受害者支付费用以重新访问他们的数据。
研究人员发现,赎金记录的开头是:“您的所有数据都已备份”——这是一个谎言。分析机器人的查询表明,在删除所有表之前“备份”数据时,它只保存了每个表的前 20 行,这意味着支付赎金的受害者将永远无法恢复所有已删除的数据。
看一眼区块链就会发现,该机器人确实成功地诱骗了一些受害者付款,在短短一周内从六名受害者那里净赚了 3,000 多美元。
一旦支付到赎金票据中指定的数字钱包中,加密货币就会被传送到一个单独的钱包中,该钱包存放着价值 2,950,489 美元的比特币,至少在撰写本文时是这样。
自 2021 年 8 月 25 日以来,二级钱包一直在启动并运行,并且经常每天收到数千美元的多笔付款,这表明数据库机器人可能由从事其他更有利可图的网络犯罪途径的个人或团体运行。
尽管该实验仅使用Postgres服务器运行,但研究人员还发现了针对MySQL数据库的类似活动,其流量来自相同的/24范围。
该 IP 地址来自荷兰托管服务提供商 Limenet,但赎金票据中包含的俄罗斯域名表明攻击者试图隐瞒他们的真实位置。
与 Postgres 活动一样,MySQL 机器人声称备份所有受害者的数据,但只保存每个表的前十行,并要求支付 0.017 比特币的恢复费——大约是 Postgres 机器人要求的费用的两倍。
“作为最后一步,该机器人试图使用'SHUTDOWN'命令使MySQL服务器停止 - 这是其计算和破坏性意图的明显迹象,这无疑会引起你的注意,”Border0团队说。
安全专家Kevin Beaumont还强调,类似的机器人也针对Microsoft SQL数据库,但没有提供进一步的细节。
这种类型的恶意软件并不新颖——Palo Alto Networks 的 Unit 42 去年引起了人们对类似活动的关注——但漏洞利用的速度让旁观者感到惊讶。
一般来说,Reg 读者会知道,最好避免将数据库暴露在公共互联网上,尽管我们都知道它偶尔会不时发生......
有数以百万计的面向公众的 Postgres 和 MySQL 服务器:Border0 进行的 Shodan 扫描发现 Postgres 超过 800,000 台,MySQL 超过 320 万台。
诚然,其中一些可能是蜜罐,但很有可能,对于勒索机器人来说,这仍然是一个不错的大目标池。
“在公共云中看到许多开放数据库服务并不奇怪,”研究人员说。“如果你在DigitalOcean甚至AWS上运行你的数据库,那么这些云提供商并不总是能让你从桌面访问你的数据库变得容易,甚至在不同的地区或提供商中运行的工作负载也是如此。您可能别无选择,只能从任何地方打开它。因此,虽然这种做法很糟糕,但有这么多开放数据库也就不足为奇了。
原文作者:Connor Jones
原文链接:https://www.theregister.com/2024/01/17/extortion_bot_is_autopwning_postgresql/