2020年全球联网数据库风险分析报告.pdf
2020 Global Networked Database Risk Analysis Report 2020 年 10 月 2020年全球联网数据库 风险分析报告 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 2 2020 年全球联网数据库风险分析报告 团队介绍 360CERT 360CERT是政企安全创新中心的尖兵团队,团队致力于维护计算机网络空间安全,是360基于 协同联动,主动发现,快速响应 的指导原则,对全球重要网络安全事件进行快速预警、应急响应的 安全协调中心。针对全球重大安全漏洞第一时间启动安全响应流程,发布权威报告,帮助用户进行 预防处理,保护用户和互联网安全。 360 天枢智库 360 天枢智库,是中国首家专注于“大安全”研究领域的新型企业智库。天枢智库依托于 360 深耕 多年的网络安全实战经验、海量安全大数据、安全创新实践以及完善的专家体系,聚焦网络安全行 业发展和大安全问题,看现在,观未来,开展政策、行业、技术等方向的研究。通过与国内外智库 平台、高校及科研机构的合作与交流,博采众长,助力网络安全在全行业的积极发展,为助推数字 化安全发展建言献策。360天枢智库秉持科学的、前瞻的、独立的、建设的态度,致力于养成安全 领域的思想库和风向标。 360 网络空间测绘系统(Quake) 360 网络空间测绘系统(QUAKE) 是 360 网络安全响应中心(360-CERT)自主设计研发的全 球网络空间测绘系统,能够对全球 IPv4、IPv6 地址进行持续性探测,实时感知全球网络空间中各类 资产并发现其安全风险。作为 360 安全大脑 - 测绘云的核心系统,它将作为安全大脑的重要基础设 施之一,成为连接现实世界与网络空间的桥梁。系统地址:。 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 3 2020 年全球联网数据库风险分析报告 执行摘要 随着网络空间存储数据规模的急剧扩大,联网数据库发生数据泄露的条数和风险逐年增加。公开报 道的在线数据泄露事件和数据库勒索事件屡创新高,在这背后的数据库安全问题频频被提及。那么, 全球互联网上到底存在多少联网数据库?这些数据库类型和地域分布如何?又有多少比例的数据库 存在大规模数据泄露风险?基于360自主研发的Quake 网络空间测绘系统对全球42亿IP 空间全 面测绘的结果,我们对联网数据库进行了无害化探测发现和分析,时间从 2017 年至今,全面详细地 展现了全球联网数据库分布特征和风险。研究报告的主要发现如下 : 1、介绍了本报告所选取的数据库 MySQL、SqlServer、Oracle、 PostgreSql、DB2、ElasticSearch、MongoDB、Memcache、 Redis 和 CouchDB 十大数据库类型。 我们根据数据库使用场景和 分类分为了关系型数据库和非关系型数据库。探测发现,目前全球 数据库联网数据库总量为 1500 万个,关系型数据库有 1400 万个, 占总量的93%,非关系型数据库有109万个,占总量的7%。关系 型数据库使用量要远大于非关系型数据的使用量。与DB-Engines 的市场研究数据 Oracle 数据库排名第一不同的是,通过我们探测全 网中 Oracle 仅为 157,157 个位于第六位。 2、对所选的数据库全球地理分布和利用希尔伯特曲线进行IPV4空 间分布进行了分析。 数据库全球地理分布主要集中在中美两国,在 一些组织管理下的 IP 段,例如:RIPE NCC、ARIN 和 LACNIC 等数据库IP呈均匀分布,在另外一些,如US-DOD则不存在数据 库 IP。在各大数据库中 MySQL 的使用量最多有 1 千多万。在各数 报告主要内容: 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 4 2020 年全球联网数据库风险分析报告 据库的全球分布中美国和中国都位于前两位,MySQL、PostgreSql、Redis、DB2 和 CouchDB 使用量最多的为美国,SqlServr、Oracle、MongoDB、ElasticSearch 和 Memcache 使用量最 多的为中国。波兰在数据库总量位于第三,在 PostgreSQL 数据库使用量中位于第二位。同时把数 据库探测得到的版本与各个版本发行日期和结束维护日期进行比较,发现全网仍有大量官方不在支 持维护的数据库运行,如Mysql 5.1系列于2013年12月官方停止支持后,仍有60万个5.1.73和 16 万个 5.1.26 版本在使用。 3、对数据库存在泄露的情况进行分析,并提出数据库加固建议。 通过分析发现,数据泄露仍是数据 库安全的一大隐患,网中仍有超8万个数据库存在未授权访问漏洞。ElasticSearch泄露数据量达 到3,402TB、MongoDB泄露量为611TB、Redis泄露数据量为10TB和Memcache为5.3TB。 互联网约 30% 的 Memcache 数据库存未授权访问问题,ElasticSearch 存在未授权访问的数量 占该数据库总量的 20% 左右。 4、将存在泄露的数据库IP进行归属地划分,我们发现在各个数据库泄露全球排名中,中国在数 据库泄露数量排名全球第一具有近4万个数据库存在未授权访问漏洞 ,其中在 ElasticSearch、 MongoDB 和 Redis 数据库类型中存在该漏洞的数量居全球第一,分别为 ElasticSearch 数据库 11,952 个、MongoDB 数据库 11,974 个和 Redis 7,127 个。南非在存在未授权访问的 Memcache 数据库排名第一,为 4890 个。 5、我们针对数据库勒索中出现的 BTC 地址做了统计 ,发现“1FYqD4YtPpcnHyyMiFFigG53s5 1dob6xx1”在勒索事件中出现次数最多高达 3,472 次,该数据反映出针对数据库的大规模、批量式 勒索攻击依旧存在。 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 5 2020 年全球联网数据库风险分析报告 一、背景介绍 随着互联网的飞速发展,越来越多的设备接入互联网中形成网络空间。网络空间作为人类活动新的 空间形态,是人和信息的共同载体1。数据库作为网络空间数据的承载基础设施,扮演了重要的角色, 存储着人类在网络空间活动过程中产生的各级各类数据,有很多数据重要且敏感,涉及国家安全或 个人隐私。这些数据一旦泄露将直接或间接造成重大经济损失。Quake网络空间测绘系统是360 网络安全响应中心(360-CERT)自主研发设计的全网空间测绘系统,能够对全球全量IPv4、 IPv6地址进行持续性测绘工作,依托360全网海量大数据资源,具备全球网络空间测绘、监测能力。 2020年8月Ponemon Institute和IBM Security联合发布的2020年数据泄露成本报告2显示, 2019年8月至2020年4月间全球17个主要国家/地区17个行业共有524个组织报告发生了数 据泄露事件,这些行业涵盖了医疗、金融、教育、能源、工业、通信等主要领域。数据泄露的平均 总成本达到386万美元,该数字自2014年至今一直在350万到400万美元间波动,并没有显著 改善。报告指出,当泄露数据条数在100万至1000万条时,平均总成本将达到5000万美元,而 泄露数据条数超过 5000 万条时,平均总成本将飙升至 3.92 亿美元。数据泄露造成最严重的后果就 是使组织的业务失效,由此遭受的损失占到平均总成本的40%。下面3起2020年公开报道的事 件显示了在线数据泄露的严峻形势。 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 6 2020 年全球联网数据库风险分析报告 背景事件一:美国超过 2 亿条人口信息泄露 2020 年 1 月 27 日 Comparitech 的安全研究员 Bob Diachenko 发现了一个未经任何权限验证的 ElasticSearch 数据库服务器暴露在网络上 3。该次数据泄露的样例数据如图 1-1 所示。 此次暴露的数据包括个人信息、人口统计信息和财产信息等共201,162,598条。这些数据在互联网 中暴露时间长达一个多月,直到 2020 年 3 月 4 日该数据库服务器被关闭。在这一个多月时间里任 何人都能够通过网络访问此数据库。由于泄露的数据包含详细的个人信息和财产信息,这些数据很 可能被不法分子用来进行网络钓鱼等犯罪活动。 在本次事件中由于管理者未对数据库进行合理的权限验证,导致亿级美国个人信息数据在互联网公 开暴露上长达一个多月时间。根据美国商务部下属的美国人口普查局数据显示 4,美国现阶段人口 数量为 330,429,434 个,此次泄露的数据量超过美国人口总数的一半以上,且涉及到人口、财产等 敏感信息。 背景事件二: 英国印刷公司 Doxzoo 泄露 343GB 机密信息 图 1-1 泄露数据样例 图 1-2 泄露的护照信息和泄露的军事材料 2020 年 1 月 22 日 vpnMentor 网络安全团队发 现了印刷公司 Doxzoo 的一个 Amazon S3 云 存储服务器泄露了343GB大小的数据5其中 包括个人护照(如图1-2左所示)信息、内部军 事文件(如图1-2右所示)等敏感信息。根据 vpnMentor描述,此次泄露有超过10万用户受 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 7 2020 年全球联网数据库风险分析报告 背景事件三: VPN 数据库泄露超过 2000 万用户日志 2020 年 7 月 5 日,vpnMentor 安全研究团队 Noam Rotem 发现了一台 ElasticSearch 服务器 泄露了 1.207TB VPN 日志信息 6。数据泄露的数据摘要如表 2-1 所示。该服务器于 2020 年 7 月 15日被关闭,其中泄露了包括明文密码、用户访问日志在内的1.207TB数据。一向以安全著称的 VPN提供商,本次却由于低级的失误,造成了大量数据的泄露,此次泄露的数据也揭露了No-log VPN“不记录用户访问日志”的谎言。 在此事件中正是管理者未对亚马逊云存储服务进行正确的权限验证,导致大量敏感数据泄露,甚至 包含了军事机密文件。本次事件警示,数据库安全可能威胁的不仅仅是个人,甚至可能涉及国家或 者军事安全。 表 2-1 VPN 日志泄露事件数据摘要 到影响,还涉及美国和英国的军事数据。该服务器于2020年2月11日关闭。由于未设置权限验证, 在这之前任何人都可以通过互联网访问到该服务器。 在此事件中正是管理者未对亚马逊云存储服务进行正确的权限验证,导致大量敏感数据泄露,甚至 包含了军事机密文件。本次事件警示,数据库安全可能威胁的不仅仅是个人,甚至可能涉及国家或 者军事安全。 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 8 2020 年全球联网数据库风险分析报告 二、方法 根据DB-Engines的市场研究数据7,我们按照2020年数据库排名,选取了十个具有代表性的 数据库进行了分析,如图 2-1 所示,反映了数据库的受欢迎程度。表 2-2 列出了我们本次分析的数 据库类型,并按照数据库常见的使用场景和分类,划分为关系型和非关系型数据库。关系型数据库 用来存储结构化数据,应用场景为数据关系性强,具有标准定义的项目。非关系型数据库适合存储 非结构化数据,应用场景为一些数据量大,数据之间没有强关系的项目。 本次探测和分析的数据全部取自Quake 网络空间测绘系统无害扫描、去重得到,时间跨度从2017 年9月到2020年9月。 图 2-1 DB-Engines 数据库排名 表 2-2 本次分析的数据库 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 9 2020 年全球联网数据库风险分析报告 三、数据分析 3、1 全球联网数据库地理分布概况 通过Quake平台,我们探测到全球数据库 总量有15,090,146个,其中关系型数据库有 型数据库占总量的 7.3%,关系型数据库的数量远 大于非关系型数据库。 将探测到数据库的服务IP进行归属地分类,可以 得到数据库在全球国家的分布,如图 3-2 所示。 其中在各个国家中数量TOP10的如图3-3所示。 结合全球分布来看数据库数量集中分布在北美洲、 亚洲和欧洲。 图 3-1 数据库总量 图 3-3 数据库资产量 TOP10 13,999,460个,非关系型数据库有1,090,686个, 如图 3-1 所示。 可以看到关系型数据库占总量的92.7% ,非关系 其中美国存在约518万个排名第一;中国289 万个位于第二位;后续为波兰956,271个、德国 633,728个、法国452,794个和荷兰371,692, 均为欧洲国家。在TOP10中令人意外的波兰排 名第三,超过传统的德国和法国。 图 3-2 常见数据库全球分布 全球数据库统计 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 10 2020 年全球联网数据库风险分析报告 通过Quake平台,各类型数据库在公网暴露数量分布如图3-4所示。我们获得了10,669,797个 运行 MySQL 服务的实例。PostgreSql 存在 1,515,560 个,SqlServer 有 1,282,744 个。探测 数据和DB-Engines排名不同的是,MySQL在互联网中暴露的数量远多于其它数据库,在DB- Engines 排名第一的 Oracle 数据库在互联网上暴露数量为 157,157 个,位于第六位。 根据数据库在全球的分布,我们统计出了各个数据库使用量最多的国家(如表3-1所示)。在各个 数据库使用量第一的国家中,MySQL、PostgreSql、Redis、DB2 和 CouchDB 使用量最多的为 美国。SqlServr、Oracle、MongoDB、ElasticSearch 和 Memcache 使用量最多的为中国。 图 3-4 数据库数量分布 表 3-1 各个数据库使用量最多的国家 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 11 2020 年全球联网数据库风险分析报告 为了对联网数据库在IPV4空间的分布一探究竟,我们使用希尔伯特曲线将一维的IP空间外推成二 维空间,如图3-5所示。图中每个像素代表一个C段IP地址(/24),黑色像素代表该C段中数 据库占比为 0%,蓝色到白色像素代表对应 C 段中数据库占比小于 50%,白色像素到红色像素之间 代表占比大于 50%,红色像素代表占比 100%。由图 3-5 就可以看出,数据库在 IPV4 空间中总体 上看并不是均匀分布的,而是星星点点成块分布。 我们通过IPV4地址空间注册表8与我们探测得到的数据库IP进行匹配发现,在一些组织管理下 的 IP 段,例如:RIPE NCC、ARIN 和 LACNIC 等数据库 IP 呈均匀分布,在另外一些 , 如 US- DOD 则不存在数据库 IP,如图 3-6 所示。 图 3-5 数据库资产在 IPV4 空间的分布 图 3-6 数据库资产在 IPV4 空间中部分组织的分布 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 12 2020 年全球联网数据库风险分析报告 3、2 主要数据库类型地理分布 3、2、1 MySQL MySQL是一个传统的关系型数据库,原由瑞典MySQL AB公司开发,2009年被甲骨文公司 (Oracle)收购,成为Oracle旗下产品。MySQL由于性能高、成本低和高可靠性被广范应用。在 被甲骨文收购后,MySQL 创始人麦克尔维德纽斯以 MySQL 为基础,成立分支计划 MariaDB。 本次探测 MySQL 的数据量为 MySQL 和 MariaDB 数据总和。 我们探测得到的 MySQL 总量为 10,669,797 个 ,MySQL 全球分布如图 3-7 所示。在 MySQL 全 球分布的国家中,美国使用量最多,有3,978,657个,中国使用量2,203,568个位于第二位,德 国拥有477,824个位于第三。第四位到第十位的分别是波兰405,029个、法国380,792个、荷兰 254,156个、英国214,878个、南非211,435个、日本671976个和俄罗斯联邦192,674个,如表3-2 所示。 表 3-2 MySQL 分布国家 TOP 10 图 3-7 MySQL 全球分布 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 13 2020 年全球联网数据库风险分析报告 在 MySQL 的各个版本中,版本 5.6.41 使用量最大有 883,310 个 , 版本 5.1.73 使用量为 60,2291 位于第二位,如图 3-8 所示。 表3-3罗列了MySQL各个版本的发布日期和终止支持的日期。在MySQL版本TOP20中发现, 仍有大量官方不再维护的老版本的MySQL在互联网中存在,例如MySQL 5.1.73数量为602,291 个,位于 MySQL 各个版本的第二位,距离官方终止支持的日期过去了近 7 年。 图 3-8 MySQL 各个版本 TOP20 表 3-3 MySQL 各个版本发布时间 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 14 2020 年全球联网数据库风险分析报告 3、2、2 ElasticSearch ElasticSearch 是一个基于 Luncene 库的搜索引擎,基于 Java 语言开发的一个流行的企业级搜索 引擎。2010 年 Shay Banon 发布了 ElasticSearch 的第一个版本。ElasticSearch 常用于云计算 中,能够达到实时搜索、稳定、可靠、快速,安装使用方便。ElasticSearch也由于未授权访问漏洞, 常常被爆出数据泄露事件。因此,对 ElasticSearch 进行测绘非常有意义。 我们在互联网中共发现了 135,490 个开启 ElasticSearch 服务的实例,全球分布如图 3-9 所示。 图 3-9 ElasticSearch 全球分布 表 3-4 ElasticSearch 分布国家 TOP 10 图 3-10 ElasticSearch 使用版本 TOP20 ElasticSearch 全球分布 TOP10 如表 3-4 所 示,中国 ElasticSearch 使用量最多有 43,705 个;其次为美国40,163个,和中国数量较为 接近;德国6,605个排名第三。我们还统计了 ElasticSearch各个版本的数量如图3-10所示。 ElasticSearch目前使用的最多的版本是7.6.2, 有 1,891 个,并且通过图 3-9 还能发现,目前仍 有不少老版本的ElasticSearch在使用,如2.4.6 版本有 1,121 个,1.5.2 版本有 759 个。 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 15 2020 年全球联网数据库风险分析报告 3、2、3 Redis Redis(Remote Dictionary Server ),即远程字典服务,是一个开源、支持网络、日志型的 Key-Value 数据库,并提供多种语言的 API。 我 们 探 测 得 到 的 Redis 有 682,902 个 , 全 球 分 布 如 图 3-11 所 示。Redis 的 全 球 分 布 和 ElasticSearch 的很类似,主要集中在欧美和中国等地,其中分布 TOP10 如表 3-5 所示。 图 3-11 Redis 全球分布 表 3-5 Redis 分布国家 / 地区 TOP 10 图 3-12 Redis 使用版本 TOP20 美国的 Redis 使用量最多有 189,142 个,中 国有114,239个位列第二。同时我们也列出了 Redis 各个版本的统计,Redis 版本 TOP20 如图3-12所示,从图中可以看到3.2.12版本 使用量最多,有 2948 个。 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 16 2020 年全球联网数据库风险分析报告 3、2、4 MongoDB MongoDB是一种面向文档的数据库,由C+语言编写而成,初始版本于2009年2月发布。 MongoDB具有强大的查询语言,可以实现与关系型数据库表单查询类似的大部分功能,支持对数 据建立索引。通过探测,我们发现 MongoDB 全网共有 181,050 个,全球分布如图 3-13 所示。 表3-6罗列了MongoDB使用数量TOP10的国家。美国和中国的使用量相接近,分别为49,361 个和 48,372 个。其它国家和前两名差距较大,日本仅有 21,068 个位于第三位。其后,德国、新加 坡和法国的使用量较为接近分别为9,699个、7,574个和6,065个。印度和荷兰的使用量较为接近 分别为4,722个和4,360个。爱尔兰和英国MongoDB使用量较为接近分别为3,998个和3,323个。 表 3-6 MongoDB 分布国家 TOP 10 图 3-14 MongoDB 各个版本 TOP20 图 3-13 MongoDB 全球分布 同样的,我们对MongoDB的版本分布做了统 计,如图 3-14 所示。其中,2.5.1 版本远多于 其它版本,有 41,782 个。根据 MongoDB 的 各个版本的发行日期和终止支持日期9,可以 发现仍有大量的老版本MongoDB在互联网上 使用。 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 17 2020 年全球联网数据库风险分析报告 3、2、5 Memcache Memcache 是一套分布式的高速缓存系统,由 LiveJournal 的 Brad Fitzpatrick 开发。我们探测 得到的 Memcache 有 64,085 个,Memcache 的全球分布 , 如图 3-15 所示。 根据表3-7所示,在Memcache全球分布的国家中,中国使用量最多,有19,001个;美国使用 量16,693个位于第二位;南非拥有8,686个位于第三。之后数量急剧减少,从法国2,973个开始 依次为俄罗斯联邦 2,274 个、德国 1,604 个、日本 1,037 个、荷兰 863 个、英国 748 个和加拿大 727 个。 图 3-15 Memcache 全球分布 表 3-7 Memcache 分布国家 TOP 10 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 18 2020 年全球联网数据库风险分析报告 3、2、6 PostgreSql PostgreSql是一种特性非常齐全的关系型数据库,是以加州大学计算机系开发的POSTGRES 4.2 版本为基础的对象关系型数据库。 PostgreSql在互联网中共有1,515,560个,PostgreSql的全球分布如图3-16所示。如表3-8所示, 在 PostgreSql 全球分布的国家中,美国使用量最多,有 489,577 个;波兰使用量 380,794 个位 于第二位;中国拥有77,241个位于第三。之后从德国69,814个开始依次为智利59,614个、巴西 43,422 个、韩国 36,647 个、日本 34,537 个、法国 27,541 个和爱尔兰 25,385 个。 表 3-8 PostgreSql 分布国家 TOP 10 图 3-17 PostgreSql 各个版本 TOP20 图 3-16 PostgreSql 全球分布 如图3-17所示,在PostgreSql的各个版本中, 版本 9.5.1 使用量最多有 282,584 个。 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 19 2020 年全球联网数据库风险分析报告 3、2、7 SqlServer SqlServe 是由 Microsoft 开发和推广的,在全网中共有 1,282,744 个,SqlServer 的全球分布如 图3-18所示。表3-9罗列了SqlServer在全球主要国家的分布。中国使用量最多,有304,049个; 美国使用量282,948个位于第二位;波兰拥有166,253 个位于第三。之后从韩国41,672个开始依 次为印度 36,565 个、土耳其 30,846 个、巴西 29,946 个、德国 20,727 个、越南 19,069 个和智 利 18,018 个。 图3-19显示在SqlServer的各个版本中,版本10.50使用量最多有224,919个,远远多于其它版本。 图 3-18 SqlServer 全球分布 表 3-9 SqlServer 分布国家 TOP 10 表 3-9 SqlServer 分布国家 TOP 10 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 20 2020 年全球联网数据库风险分析报告 3、3 主要数据库风险分析 在 3.2 节 中 提 到, 通 过 Quake 平 台 发 现 Redis 总 共 有 682,902 个 开 放 在 公 网 的 实 例, ElasticSearch 和 MongoDB 分别有 135,490 和 181,050 个 , 而 Memcache 实例有 64,085 个。 过往的一些严重的数据泄露事件常常与 ElasticSearch 和 MongoDB 数据库相关,这些数据库通常 存储了大量数据,但管理者往往会忽视对这些数据库进行权限验证(未授权访问漏洞),导致数据泄露。 在得知这些数据库在互联网上暴露的数量后,我们还想知道,到底还有多少数据库存在未授权访问 漏洞,还有多大的数据暴露在互联网上。 我们把测绘数据中存在未授权访问漏洞的数据库与数据库总量做对比,如图 3-20 和表 3-10 所示, Redis 中存在问题的实例占总数的比例为 2.15%,有 14,704 个。ElasticSearch、MongoDB 和 Memcache 中存在该问题的实例占总量比例分别为 20.26%、12.28% 和 31.80%。 表 3-10 数据库存在未授权访问漏洞数量占比 需要引起重视的是,仍然有822个独立IP在 UDP11211 端口上运行着 Memcache。而 早在 2017 年 360 信息安全部 0kee Team 就发现了利用此配置进行的Memcache DRDoS 攻击,并在 PoC 2017 会议上做了 公开报告进行预警 10。 在多次此类攻击事件发生后,2018年360 信息安全部 0kee Team、360 网络安全研 究院、360-CERT 还共同发布了技术博客深 入分析了该漏洞 11。 图 3-20 未授权漏洞的数据库与数据库总量对比 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 21 2020 年全球联网数据库风险分析报告 在明确泄露实体数量后,我们根据如下字段进行分析,分别为:Redis中的used_memory、 Memcache 中的 bytes、MongoDB 中的 datasize 和 ElasticSearch 的 size 字段。我们利用这 些字段数据,做了进一步的探测,将各个实体泄露数量相加得出各个数据库可能泄露的总量,如图 3-21 所示。ElasticSearch 泄露数据量达到 3,402TB、MongoDB 泄露量为 611TB、Redis 泄露 数据量为 10TB 和 Memcache 为 5.3TB。可以看到 ElasticSearch 和 MongoDB 泄露的数据量 远大于 Redis 和 Memcache,这和 ElasticSearch 常用于大数据搜索有关。 图 3-21 各个数据库泄露数据总量 将泄露数据的数据库IP进行归属统计,可以 得到数据库泄露的全球分布,如图3-22所 示。根据表3-11数据库泄露国家TOP10所 示, 中国有35,095个IP可能存在数据泄 露,位于第一,美国有17,830个位于第二 。 ElasticSearch、Memcache、MongoDB 和 Redis泄露数量最多的国家如表3-12所示。 可以看出除Memcache外,中国在其它三个 数据库中可能泄露数量是最多的 。 图 3-22 数据库泄露全球分布 表 3-11 数据库泄露国家 TOP10 表 3-12 各个数据库泄露数量最多的国家 数据来自 360Quake 空间测绘系统 数据来自 360Quake 空间测绘系统 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 22 2020 年全球联网数据库风险分析报告 在我们统计了存在数据泄露的数据库后,又统计了有关数据库被勒索的情况。在我们的探测中发现, 存在数据泄露(未授权访问漏洞)的数据库中,会存在一些如:“READ_ME_TO_RECOVER_ YOUR_DATA”、“have_7days_to_contact_us”等勒索字样, 一个勒索实例如图3-23所示。 一些攻击者会利用未授权访问漏洞,窃取数据库数据并留下相关比特币地址进行勒索。我们统计了 出现次数最多的数据库勒索比特币地址,如表 3-13 所示。 图 3-23 一个数据库被勒索实例 表 3-13 数据库勒索中 BTC 地址 TOP10 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 23 2020 年全球联网数据库风险分析报告 3、4 主要数据库风险分析 通过上述分析结果,我们发现仍然有大量的联网数据库存在基础安全配置缺失的问题。因此,我们 汇总了数据库通用加固建议,方便读者进行数据库安全的基本检查: 数据库应配置为始终需要进行身份验 证。 分配数据库用户权限应遵守最小权限 原则12,既仅具有应用程序所需的 最小权限。 不使用 root、sa 或 sys 等内置的或 默认的账号。 不对数据库实例添加账户管理权限。 设置白名单,仅白名单内的主机可具 有对数据库访问权限。 仅授予用户对所需特定数据库的访问 权限。 开发环境、测试环境和生产环境应该 使用单独的数据库和账户。 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 24 2020 年全球联网数据库风险分析报告 我们还列举了各个数据库官方安全建议,方便查阅: 1. MySQL 安全指南:dev.MySQL/doc/refman/8.0/en/security-guidelines.html 2. ostgreSql 安全指南:PostgreSql/docs/12/runtime.html 3. SqlServer 安全指南: security/securing-sql-server 4. Oracle 安全指南: dbseg/index.html 5. DB2 安全指南: db2z_11_secabook.pdf 6. ElasticSearch 安全指南:elastic.co/guide/en/elasticsearch/reference/ current/configuring-security.html 7. MongoDB 安全指南: checklist/ 8. Redis 安全指南:redis.io/topics/security 9. Couchdb 安全指南:guide.couchdb/draft/security.html 10. Memcache 安全指南: practices 2020 Global Networked Database Risk Analysis Report 文中部分信息直接如有侵权或异议请联系 25 2020 年全球联网数据库风险分析报告 四、结论 数据库是互联网服务组成的重要应用。也是360 Quake网络空间测绘系统重点关注的专题方 向。 通过Quake平台,我们探测到全球数据库总量有15,090,146个,其中关系型数据库有 13,999,460个,非关系型数据库有1,090,686个, 本研究报告基于Quake对全网空间扫描的结果, 通过对全球互联网最受欢迎的前几种数据库进行深入探测和数据分析,描绘了其全球国家分布状况。 同时我们对数据库数据泄露风险也进行了评估。这是第一个对全网数据库详尽研究的分析报告,极 具价值。我们的分析显示,当前全球主要国家数据库泄露风险不容乐观,数据库防护亟待加强。主 要结论如下: 1. 探 测 选 取 了 全 球 使 用 广 泛 的 MySQL、SqlServer、Oracle、PostgreSql、DB