昨天正在图形化界面调试代码,突然跟我说接口错误,一看好家伙端口勒索BTC。
All your data is backed up. You must pay 0.0052 BTC to bc1qm0v2r0mmx3py3h7fzkerd9a6rzdrpw5afqacen In 48 hours, your data will be publicly disclosed and deleted. (more information: go to 2info.win/mdb)After paying send mail to us: rambler+19so4t@onionmail.org and we will provide a link for you to download your data. Your DBCODE is: 19SO4T
你的所有数据已被备份。你必须在 48 小时内向 bc1qm0v2r0mmx3py3h7fzkerd9a6rzdrpw5afqacen 支付 0.0052 个比特币,否则你的数据将被公开披露并删除。交钱发邮件到XX, 解锁你的数据。
独立折腾最新版的服务器环境(ubuntu24.04+MangoDB8.5)就耗了我三天三夜,这哪能能忍
我的心情:
一、服务器环境
系统:云服务器 ubuntu24.04 64位 发布2024 年 4 月 25 日
数据库:MangoDB8.0.5 发布2024 年 9 月 3 日
代码环境:Node.js 23.9.0 发布2025 年3月
服务器投入: 99元/年
二、情景复现
开放远程登录数据库导致的安全漏洞。 需要将本地的MangoDB数据库数据移植到云服务器mangoDB。 设置远程开发 27017端口,便于用自己电脑上的图形界面进行数据库迁移, 远程登录修改 对应配置保存 设置bindIp即可。在云服务器上开启27017端口的访问
# 修改/etc/mongod.conf
net:
port: 27017
bindIp: 0.0.0.0 # 允许所有网络接口连接
# 重启MangoDB
sudo systemctl restart mongod
# 查看MangoDB状态
sudo systemctl status mongod
开启远程访问在 个人电脑用图形化操作数据库很方便。
三、防火策略
这27017端口是mangoDB数据库默认设置端口,一开就暴露在公网上。 云服务器防火墙一设置 0.0.0.0 ,立刻会被黑客扫描到。
查询本机电脑IP,对单个IP 绑定协议和端口号, 仅对所有IP地址开放80 (Http协议)、443(Https协议) 设置任何人(0.0.0.0)
防御能力,云服务器防火墙>>系统级防火墙>> 数据库级防火墙。
插曲:开启Ubuntu防火墙,结果一重启远程连自己登录都被防御了,还是采用云服务器的比较全面。
四、总结
开启数据库远程访问在 个人电脑用图形化操作数据库很方便,但数据库接口暴露在公网上其实非常危险。通常非不开放数据库接口,例如3306 (MySQL)、27017(MangoDB),可以上传代码文件,动态生成数据库及数据。主要是MangoDB自带的导入工具会用,希望图形界面本地操作,远程导入数据。大厂云服务器救我!
另一个, 网络上遍布危险,有“墙”其实挺好。还好是云服务器,非敏感数据库可以一键重装系统。
目前数据库没被爆破,各位网络攻防大佬如有更好的安全建议,欢迎讨论。