HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

谁会是下一个受害者?历数数据库黑客新闻

  • 2017-04-06
  • 本文字数:2812 字

    阅读完需:约 9 分钟

攻击事件序列

1 月 9 日:MongoDB,影响 40291 台服务器
1 月 13 日:ElasticSearch,影响 5044 台服务器
1 月 18 日:CouchDB、Hadoop,分别影响 452 和 182 台服务器
1 月 24 日:Cassandra,影响 49 台服务器
2 月 12 日:MySQL,影响范围未知

这几次攻击都被 Victor Gevers 和其他 GDI 基金会的成员发现并且持续追踪,并且已经报告给了 CERT 组织,他们甚至做了一个表格,具体记录攻击频率、范围:

除此之外,Gevers 还在 Twitter 上发文,进一步警告数据库管理员,小心被攻击:

复制代码
7 days ago @GDI_FDN warned all GovCERTs 4 world-writeable Hadoop Distributed File Systems. 5 reacted, 28 clusters taken down. Thousands left pic.twitter.com/YAoEA0eoYH
Victor Gevers (@0xDUDE) January 21, 2017

尚未被攻击的数据库包括 Neo4J、 Riak Redis

MySQL 攻击事件

2017 年 2 月 12 日,持续了30 个小时的攻击,黑客尝试各种方式,强行进入MySQL 的Root 账户。根据分析人士判断,所有的攻击都是来自荷兰的同一个IP 地址(109.236.88.20),这个IP 地址属于一家叫做 WorldStream 的公司,该公司提供主机托管服务。

由于攻击者并没有按照一种固定的套路进行攻击,所以即便是来自一个 IP 地址,我们也不能推断这次攻击属于一个黑客组织,当然,WorldStream 公司的主机只是被控制用来攻击,并不是真凶。

攻击者的手段很多,举个例子,他们成功进入 MySQL 服务器之后,攻击者会创建一个叫做“PLEASE_READ”的数据库,然后创建一张叫做“WARNING”的数据表,并且记录他们想要的赎金。也有一些 MySQL 服务器并没有创建新的数据库,而是直接在现有数据库创建数据表。这就证明了并不是同一个脚本执行的创建、写入操作,或者有可能是动态脚本。数据库信息转换为 SQL 插入语句如下所示:

复制代码
INSERT INTO PLEASE_READ.`WARNING`(id, warning, Bitcoin_Address, Email) VALUES(‘1′,’Send 0.2 BTC to this address and contact this email with your ip or db_name of your server to recover your database! Your DB is Backed up to our servers!’, ‘1ET9NHZEXXQ34qSP46vKg8mrWgT89cfZoY’, ‘backupservice@mail2tor.com’)
INSERT INTO `WARNING`(id, warning) VALUES(1, ‘SEND 0.2 BTC TO THIS ADDRESS 1Kg9nGFdAoZWmrn1qPMZstam3CXLgcxPA9 AND GO TO THIS SITE http://sognd75g4isasu2v.onion/ TO RECOVER YOUR DATABASE! SQL DUMP WILL BE AVAILABLE AFTER PAYMENT! To access this site you have use the tor browser https://www.torproject.org/projects/torbrowser.html.en’)

黑客在导出整个数据库的内容之后清空了数据,留下他们的赎金要求,接下来就会有一些厂商不得不支付这些赎金,一般情况下他们还不敢对外声张,以免声誉受损。

MySQL 并不是第一个被攻击的数据库,今年早些时候,Cassandra、MongoDB、Hadoop、ElasticSearch、CouchDB 都已经受到了攻击,让我们一一回顾当时的场景。

Cassandra 攻击事件

Cassandra 的这一波攻击更像是学生炫耀技术或者善意的黑客组织发出的警报,黑客入侵了对外提供服务的 Cassandra 数据库(通常是安全措施不到位的),并且在数据表内留下了警告信息。

最先曝光的例子是通过 Twitter 发布的,一位名叫“ DunningKrugerEffect ”的用户发推文,在数据库中创建了一张“your_db_is_not_secure,”的数据表,并且留下了这么一段话:

复制代码
Someone is warning unaware unprotected Cassandra database (https://t.co/2UcEiraM5l) owners by creating an empty "your_db_is_not_secure" db. pic.twitter.com/XDfvSPjeno
— Victor Gevers (@0xDUDE) January 24, 2017

MongoDB 攻击事件

Victor Gevers 和 Niall Merrigan (这位同来自于安全研究 zuzhi)组织)发文,指出本次攻击主要来自一个叫做 Kraken 的职业勒索团队,大约有 16000 个数据库被攻击,占了所有被攻击的 MongoDB 数据库的 56%。

一共大约有 12 个组织参与了本次大规模攻击行动。让人震惊的是,很多受害数据库都没有对管理员账号设置密码,并且还保持这种状态面向互联网。

下面这张图是 Kraken 团队留给受害者的邮件截图:

ElasticSearch 攻击事件

Niall Merrigan 同样也追踪了针对 ElasticSearch 的这波攻击,他一个人就发现超过 600 个服务被攻击了。

一个名叫“P1l4t0s”的勒索组织对该事件负责,并在受害人服务器上留下来了这么一段话:

复制代码
SEND 0.2 BTC TO THIS WALLET: 1DAsGY4Kt1a4LCTPMH5vm5PqX32eZmot4r IF YOU WANT RECOVER YOUR DATABASE! SEND TO THIS EMAIL YOUR SERVER IP AFTER SENDING THE BITCOINS p1l4t0s@sigaint.org

Itamar Syn-Hershko 是一位搜索 & 大数据专家,他发表了一篇博文,知道用户如何加强ElasticSearch 服务器的安全性,以对抗攻击者。

Hadoop & CouchDB 攻击事件

一家叫做“NODATA4U”的黑客组织已经入侵 Hadoop 数据存储服务,然后清除数据,把所有的表名替换为“NODATA4U_SECUREYOURSHIT.”,如图所示。

Gevers 也对这波攻击进行了追踪,他认为针对 Hadoop 的攻击有别于前几个,因为没有要求赎金,更像是故意破坏,并且攻击者会在一台服务器上停留超过 1 个小时,这个做法和其他几次攻击方式不一样。

针对 CouchDB 的攻击就简单多了,他们要钱,如图所示:

这波针对 Hadoop 和 CouchDB 的攻击导致很多 Hadoop、CouchDB 服务在周末停止工作,有些甚至到周一还是无法正常工作。

总结

为了避免数据库被外部攻击,最好不要对外直接暴露数据库地址,通过 Restful 协议方式对外提供服务,同时对数据加强安全保护。此外,比特币的出现也为黑客提供了新的洗钱手段,需要各国联系起来打击这类黑客组织,还 IT 界太平。

术语解释

  • MySQL :世界闻名的开源数据库,隶属于 Oracle 公司,提供高性能、可扩展数据库服务。
  • ElasticSearch :一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。
  • MongoDB :一种基于分布式文件存储的数据库,主要面向文档存储,采用主从架构模式。
  • Cassandra:一种 NoSQL 数据库,支持丰富的数据类型,采用无中心化设计,擅长数据的读取、更新操作,整体来看插入、读取、更新数据性能均较为平均。
  • CouchDB:NoSQL 解决方案, 是一个面向文档的数据库, 在它里面所有文档域 (Field) 都是以键值对的形式存储的。CouchDB 有一些独特的特性, 例如高级复制。
  • Hadoop:由 Apache 基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
  • CERT:计算机安全应急响应组(Computer Emergency Response Team)是专门处理计算机网络安全问题的组织。在 1988 年莫里斯蠕虫横扫互联网之后,在美国联邦政府资助下,卡内基梅隆成立了第一个 CERT 组织。

感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-04-06 19:002208
用户头像

发布了 50 篇内容, 共 28.5 次阅读, 收获喜欢 40 次。

关注

评论

发布
暂无评论
发现更多内容

AWS S3 对象存储攻防

火线安全

云原生 云安全

患上“远见病”的VR,不得不走进动物世界

脑极体

期待!Fedora 36 发布日期和新功能

Ethereal

Linux小技巧:如何在 Vim 中显示行号?

Ethereal

聊聊 Pulsar: Pulsar 分布式集群搭建

老周聊架构

云原生 Apache Pulsar 3月月更

千万级学生管理系统的考试试卷存储方案

晨亮

「架构实战营」

让ICT飞鸟,长出数字能源的翅膀

脑极体

什么是元宇宙?为何要关注它?——解码元宇宙

CECBC

比特币突破4.4万美元!美欧制裁或推动俄罗斯资金转向加密货币

CECBC

docker、k8s 面试总结

yuexin_tech

Docker k8s

Go语言实战之数组的内部实现和基础功能

山河已无恙

Go 语言 3月月更

初识工业互联网

劼哥stone

工业互联网

SpringDataRedis序列化带有双引号

编号94530

redis spring 序列化 Jackson

Linux运维必知:如何从其 PID 中查找进程名称

Ethereal

如何打造良好的分享氛围

Hockor

团队管理 技术分享

面试官:GRE 和 IPsec 隧道有什么区别?

Ethereal

开发电脑用 Windows 还是 Mac

HoneyMoose

如何在 eNSP 上保存配置?

Ethereal

从用户输入URL到页面展示,这中间发生了什么?

Tristan

前端 浏览器

开发提效小技巧分享(一)

编程三昧

3月月更 前端工具

[银行面试系列]1 进入银行之前必须了解的20个问题

暖蓝笔记

3月程序媛福利 3月月更

将本地代码同步到gitee和github中去

布衣骇客

Git Commit #Github

OKR怎么写?100个OKR案例模板

爱吃小舅的鱼

44条工程管理经验教训

hongfei

项目管理 3月月更 工程管理 工程经验

性能测试中Disruptor框架shutdown失效的问题分享

FunTester

Disruptor 性能测试 接口测试 高性能队列 FunTester

如何做好一场技术分享

Hockor

团队管理 个人成长

如何在敏捷中管理和减少技术负债?

爱吃小舅的鱼

搭建 VuePress 博客,你可能会用到的一些插件

冴羽

Vue 博客 vuepress 博客开发 博客搭建

三条命令搭建自己的博客平台

山河已无恙

WordPress 3月月更

如何在 Linux 中将主目录移动到新分区或磁盘?

Ethereal

紫光展锐解除楚庆CEO职务,内部员工爆料那些不为人知的内情!

IC男奋斗史

芯片行业思考

谁会是下一个受害者?历数数据库黑客新闻_数据库_麦克周_InfoQ精选文章