生成式AI领域的最新成果都在这里!抢 QCon 展区门票 了解详情
写点什么

超 2 亿中国用户简历曝光!MongoDB 又一重大安全事故

  • 2019-01-11
  • 本文字数:2062 字

    阅读完需:约 7 分钟

超2亿中国用户简历曝光!MongoDB又一重大安全事故

近日,外网安全研究人员偶然发现一个没有被很好保护的 MongoDB 数据库服务器,整个实例包含 854GB 数据,共有 202,730,434 条记录,其中大部分是中国用户简历,内容非常详细,包括中文全名、家庭住址、电话号码、电子邮件、婚烟状况、政治关系、期望薪水等内容。Hacken Proof 网络风险研发主管 Bob Diachenko 认为,这应该是服务器数据在线泄露。



图片来源:https://blog.hackenproof.com/industry-news/202-million-private-resumes-exposed


该信息对整个互联网开放,因此追踪信息来源几乎是不可能的,但经过 Twitter 上一位用户的努力,已确定大致来源为一个已经删除的 GitHub 存储库,该存储库包含 Web 应用程序的源代码,此应用程序具有与泄露数据库中数据结构完全相同的数据,这清楚表明该程序应该是一个收集用户简历的第三方应用。


据此用户查证,该已删除应用的简历主要来源之一是 bj.58.com,当 Diachenko 与 bj.58.com 工作人员联系时,他们也给出了初步评估,确定数据来自第三方应用泄露,并非官方泄露。



由于 Diachenko 在 Twitter 上寻求帮助的行为引起了数据库所有者的注意,因此,目前该数据库已经得到保护。据悉,该安全研究员上个月也曾发现一个类似的 MongoDB 服务器,暴露了超过 6600 万条记录,似乎最初来自于 LinkedIn。


2017 年,58 也曾发生一起数据泄露事件,当时只需支付 700 元购买一种爬虫软件,用卖家提供的账号登录后就能不断采集应聘者相关信息,该软件每小时可以采集数千份用户数据。58 方面当时给出的回应是:非官方泄露,黑客攻击所致。

MongoDB 安全门事件

此前,MongoDB 也多次出现安全问题。无需身份验证的开放式 MongoDB 数据库曾遭到多个黑客组织的攻击,被攻破的数据库内容会被加密,受害者必须支付赎金才能找回自己的数据。


  • 2016 年 12 月底,MongoDB 遭黑客攻击,事情在 2017 年 1 月达到顶峰。攻击者利用配置存在纰漏的 MongoDB 展开勒索行为,自称 Harak1r1 的黑客组织将网络上公开的 MongoDB 资料库中的资料汇出,并将 MongoDB 服务器上的资料移除。起初两百个 MongoDB 数据库实例的数据被非法清除,几天之内,受感染的 MongoDB 数据库实例已经增长至一万多台。开始攻击者要求受害人支付 0.2 个比特币(当时的价值约为 184 美金)作为数据赎金,随着被感染的数据库越来越多,攻击者将勒索赎金提升至 1 个比特币(价值约为 906 美金)。此次事件被称为“MongoDB 启示录”。

  • 2017 年 9 月,MongoDB 数据库再次遭到黑客勒索攻击,三个黑客团伙劫持了 2.6 万余台服务器。与“MongoDB 启示录”相比,此次攻击者的数量有所下降,但每次攻击的破坏性(受害者)数量上升。

MongoDB 为何如此易受攻击

MongoDB 出现时,凭借简单的部署方式,高效的扩展能力、多样化的语言接口,并借着云蓬勃发展的势头,一度在全球数据库市场占据第四名。但是,MongoDB 也存在安全风险。在一篇文章中,作者分析了 MongoDB 的最大的安全问题来源于 MongoDB 的默认配置。在默认部署情况下,MongoDB 无需身份验证,即可登录,不法分子只要在互联网上发现 MongoDB 的地址和端口就可以通过工具直接访问 MongoDB,并拥有 MongoDB 的全部权限,从而进行任意操作。之所以会如此设计,原因在于:


  • MongoDB 默认通过最简单部署方式,最大限度提高运行速度,以在虚拟机(低配机)上运行而定制的,并未充分考虑 MongoDB 的安全性。

  • MongoDB 官方文档,如针对身份验证,传输加密,网络配置的文档、指南并不规范,容易误导 MongoDB 管理员。

  • 一些 MongoDB 环境是为了单一项目或者是测试环境搭建,搭建者并不关心 MongoDB 的安全问题。


徐飞博士在极客时间的专栏《技术与商业案例解读》中也总结过,MongoDB 作为一个文档数据库,在开发策略上把绝大部分注意力都放在提高产品易用性上,也花了不少功夫来打开市场,但是在安全方面投入的精力相对很少。

如何防范隐私数据被泄漏

随着隐私数据泄漏的情况变得越来越普遍,组织应该认识到正确保护第三方数据库服务器的重要性,并采取必要的步骤来加密数据,以确保在恶意目的下无法使用。去年 8 月底华住集团泄露 2 亿多开房记录的事件闹得沸沸扬扬,InfoQ 在对事件的报道中也向大家提供了防范数据泄漏的建议:


  • 更换端口:不使用默认端口虽然无法杜绝黑客的入侵,但可以相对增加入侵难度;

  • 公网屏蔽:只监听内网端口屏蔽公网端口的请求,通过该策略继续增加黑客的入侵难度;

  • 使用普通用户启动:建议大家维护的所有 db 都使用禁止登录的非 root 用户启动;

  • 开启验证:这虽然是复杂、痛苦的一步,但却是明智的选择;

  • 权限控制:建议大家针对自己维护的数据库设置一套适合对应业务的权限控制、分配方案;

  • 备份策略:一套可靠的本地备份逻辑 + 远程备份存储方案可以解决被黑、误删、机房漏水、服务器报销,甚至机房被核弹炸毁的场景;

  • 恢复策略:建立一套能够覆盖多数灾难场景的恢复策略来避免手忙脚乱是非常必要的;

  • 敏感数据加密存储:我们建议大家一定对任何敏感信息加密后再入库,例如:密码、邮箱、地址等等。


此类事件频发也表明,安全是个不容忽视的问题,希望各厂商、开发者能够重视安全问题,避免造成不必要的损失。


2019-01-11 13:4021065
用户头像
赵钰莹 InfoQ 主编

发布了 874 篇内容, 共 602.8 次阅读, 收获喜欢 2670 次。

关注

评论 1 条评论

发布
用户头像
房主自己不锁门被偷了就怪锁有安全问题,这种逻辑也是怪了
2019-01-12 19:59
回复
没有更多了
发现更多内容

SUSE Rancher v2.6.5 社区版核心功能解读

Rancher

Kubernetes k8s rancher NeuVector

年薪80W,在大厂呆了10年的我,被裁得心服口服

博文视点Broadview

Seata 企业版正式开放公测

阿里巴巴云原生

阿里云 开源 云原生 seata

许北林:我为什么加入OpenHarmony生态?又为什么要做“启航KP”开发套件?

OpenHarmony开发者

OpenHarmony 开发者故事

Wallys/2.5Gbps Ethernet Port Support OpenWRT Support:QUECTEL /RM500Q-GL&Support:

wallys-wifi6

wifi6 openwrt

最优的纯文本模型?GPT-4蓄势待发

OneFlow

人工智能 模型 预测 openai

FinClip SaaS 版上线啦

FinClip

520,用Python定制你的《本草纲目女孩》

华为云开发者联盟

Python 华为云 modelarts 本草纲目女孩 MoXing

【直播回顾】OpenHarmony知识赋能第五期第五课——多媒体子系统之视频解读

OpenHarmony开发者

OpenHarmony 多媒体

使用 jMeter 对需要 User Authentication 的 Restful API 进行并发负载测试

Jerry Wang

Java Jmeter 性能测试 SAP 5月月更

活动预告 | 博云容器云产品族发布会,来了!

BoCloud博云

容器云 活动预告

一文带你详细了解HarmonyOS折叠屏设计规范!

HarmonyOS开发者

HarmonyOS 折叠屏

青云云原生沙龙线上集结,找到属于你的云原生实践之路!

青云技术社区

预约直播|阿里云CDP 产品发布会

阿里云大数据AI技术

CDP 产品发布

喜大普奔 | FinClip Hackathon 2022 结果宣布, Top3 项目出炉!

FinClip

FinClip 前端之 VUE 核心原理总结

FinClip

在云平台 ABAP 编程环境上编写第一段 ABAP 程序

Jerry Wang

云计算 云原生 SAP abap 5月月更

这知识点真细,Python获取HTTP响应头和响应体

梦想橡皮擦

5月月更

飞书、钉钉和企微的三巨头之争下,其他厂商在移动平台赛道如何奋起直追?

WorkPlus

LinkedList 源码分析-删除

zarmnosaj

5月月更

JVM进阶(十七)——类加载阶段解析:准备-解析-初始化

No Silver Bullet

JVM 类加载 解析 5月月更

Wallys/QCN9074 WiFi Card/ IPQ6010/IPQ6018/ 802.11ax

wallys-wifi6

ipq6018

部署在Azure上的SAS Viya可为客户带来204%的投资回报率

E科讯

thinkphp 中 fetch 方法怎么用

CRMEB

JavaScript类型转换

源字节1号

What? 从小程序反向生成App?!

FinClip

520,解锁开发者的专属浪漫

葡萄城技术团队

情人节 520

比渗透测试更有用,红队演练该如何开展?

青藤云安全

代码重构,真的只有复杂化一条路吗?

华为云开发者联盟

代码 代码重构 过度设计 代码设计

盲盒APP开发的六大功能模式基础设置

WDL22119

盲盒商城 盲盒 盲盒开发 盲盒小程序开发 小程序开发

Google Guava中EventBus使用不当会导致什么故障?

BUG侦探

kafka Guava EventBus

超2亿中国用户简历曝光!MongoDB又一重大安全事故_安全_赵钰莹_InfoQ精选文章