据最新报道显示,继MongoDB和Elasticsearch之后,MySQL成为下个数据勒索目标,从2月12日凌晨开始,已有成百上千个开放在公网的MySQL数据库被劫持,删除了数据库中的存储数据,攻击者留下勒索信息,要求支付比特币以赎回数据。

问题分析

遍观MongoDB和Elasticsearch以及现在的MySQL数据库勒索,可以发现都是基线安全问题导致被黑客劫持数据而勒索,原因在于这些服务都开放在公网上,并且存在空密码或者弱口令等使得攻击者可以轻易暴力破解成功,直接连上数据库从而下载并清空数据,特别是不正确的安全组配置导致问题被放大。

其实类似问题已不是第一次,近期云鼎实验室观测到多起案例,攻击呈现扩大态势,不仅仅是勒索,更多的是服务器被入侵,从而导致数据被下载。基线安全问题已经成了Web漏洞之外入侵服务器的主要途径,特别是弱口令等情况。错误的配置可以导致相关服务暴露在公网上,成为黑客攻击的目标,加上采用空密码等弱口令,黑客可以轻易入侵这些服务。

安全自查

值此事件爆发之际,建议对自己的服务器进行自查,避免相关数据丢失等问题,具体自查方式可参考如下:
1、排查服务器开放的端口及对应的服务,如无必要,关闭外网访问;可以使用NMap 直接执行 nmap 服务器IP(在服务器外网执行),可得到以下结果即为开放在外网的端口和服务。

2、重点针对这些开放在公网上的服务进行配置的检查,检查相关服务是否设置密码,是否弱口令。
3、如无必要,均不要使用root或者其他系统高权限账号启动相关服务。

安全建议及修复方案

一、采用正确的安全组或者iptables等方式实现访问控制;
二、关闭相关服务外网访问和修改弱密码:
1、MongoDB
a. 配置鉴权
下面以3.2版本为例,给出 MongoDB设置权限认证,具体步骤如下:
1. 启动MongoDB进程是加上-auth参数或在MongoDB的配置文件中加上auth = true;
2. 带auth启动的MongoDB,如未创建用户,MongoDB会允许本地访问后创建管理员用户。创建步骤如下:

1. 切换到 admin 库;
2. 创建管理员用户,命令如下(user和pwd可以根据需要设置):
db.createUser({user: "root",pwd: "password",roles: [ "root" ]})
3. 使用管理员用户登录后,根据角色创建您需要的用户

b. 关闭公网访问
可通过MongoDB的bind_ip参数进行配置,只需将IP绑定为内网IP即可,如下:

1. 启动时增加bind_ip参数:mongod --bind_ip 127.0.0.1,10.x.x.x
2. 在配置文件mongodb.conf中添加以下内容:
bind_ip = 127.0.0.1,10.x.x.x
其中10.x.x.x为您机器的内网IP.

2、Redis
a. 配置鉴权
1. 修改配置文件,增加 “requirepass 密码” 项配置(配置文件一般在/etc/redis.conf)
2. 在连接上Redis的基础上,通过命令行配置,config set requirepass yourPassword

b. 关闭公网访问
1. 配置bind选项,限定可以连接Redis服务器的IP,修改 Redis 的默认端口6379

c. 其他
1. 配置rename-command 配置项 “RENAME_CONFIG”,重名Redis相关命令,这样即使存在未授权访问,也能够给攻击者使用config 指令加大难度(不过也会给开发者带来不方便)

相关配置完毕后重启Redis-server服务

3、MySQL
a. 配置鉴权
MySQL安装默认要求设置密码,如果是弱命令,可通过以下几种方式修改密码:
1. UPDATE USER语句
“`
//以root登录MySQL后,
USE mysql;
UPDATE user SET password=PASSWORD(‘新密码’) WHERE user=’root’;
FLUSH PRIVILEGES;

2. SET PASSWORD语句```//以root登录MySQL后,SET PASSWORD FOR root=PASSWORD('新密码');
  1. mysqladmin命令
mysqladmin -u root -p 旧密码 新密码

b. 关闭公网访问
1. 启动参数或者配置文件中设置bind-address= IP绑定内部IP
2. 以root账号连接数据库,排查user表中用户的host字段值为%或者非localhost的用户,修改host为localhost或者指定IP或者删除没必要用户

4、其他服务
请参考以上方式或者官方文档进行配置

参考链接

  1. 《避免 MongoDB 被勒索详解,腾讯云上更安全》http://t.cn/RiVUEdY
  2. 《下一个猎杀目标:近期大量MySQL数据库遭勒索攻击》http://t.cn/Ri5ES1T
  3. 《知名搜索引擎Elasticsearch成为勒索软件敲诈目标》http://t.cn/RiVUgFD
  4. 《Redis 未授权访问配合 SSH key 文件利用分析》http://t.cn/RUO9UGY

相关推荐

【黑客解析】黑客是如何实现数据库勒索的?

本文首发腾云阁 警惕!MySQL成数据勒索新目标,更多技术文章,请点击腾云阁

警惕!MySQL成数据勒索新目标相关推荐

  1. MySQL成勒索新目标,数据服务基线安全问题迫在眉睫

    据最新报道显示,继MongoDB和Elasticsearch之后,MySQL成为下个数据勒索目标,从2月12日凌晨开始,已有成百上千个开放在公网的MySQL数据库被劫持,删除了数据库中的存储数据,攻击 ...

  2. 汽车成黑客攻击新目标

    本文讲的是 : 汽车成黑客攻击新目标   , IT168 资讯]首先是你的个人电脑,然后是你的手机.现在,你的车会成为黑客们攻击的首要目标吗? 英国<独立报>网站9月18日报道称,这是一个 ...

  3. MySQL成勒索新目标,数据服务基线安全问题迫在眉睫 1

    据最新报道显示,继MongoDB和Elasticsearch之后,MySQL成为下个数据勒索目标,从2月12日凌晨开始,已有成百上千个开放在公网的MySQL数据库被劫持,删除了数据库中的存储数据,攻击 ...

  4. mysql 用命令行复制表数据到新表

    MySQL用命令行复制表的方法 mysql中用命令行复制表结构的方法主要有一下几种: 1.只复制表结构到新表 1 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2; ...

  5. 20篇MySQL文章,成体系跟新完毕,尽情学习吧!

    MySQL是对于数据分析师来说.很重要的一项技能.你可以不会python,但是你就是不能不会SQL,基本只要是招数据分析的岗位,就必须要你会使用SQL.基于此,我将自己的学习心得,整理成了如下文章,希 ...

  6. MYSQL复制表结构及数据到新表

    1.复制表结构及数据到新表 select * into 目的数据库名.dbo.目的表名 from 原表名 select * into my0735home.dbo.infoMianTest from ...

  7. MySQL 新增表中的数据为另外一个或多个表的数据(业务场景:创建关系表,复制旧表数据到新表)

    问题 昨天同学问了我个问题 我想写个sql脚本,循环插入数据,数据是另一个表中的a.b字段 A表中的a.b字段数据,循环加入B表中a.b字段.就是这个意思 我问他为什么不用Java写,他说是数据维护, ...

  8. 利用Flume将MySQL表数据准实时抽取到HDFS

    转自:http://blog.csdn.net/wzy0623/article/details/73650053 一.为什么要用到Flume 在以前搭建HAWQ数据仓库实验环境时,我使用Sqoop抽取 ...

  9. 使用 Binlog 和 Canal 从 MySQL 抽取数据

    数据抽取是 ETL 流程的第一步.我们会将数据从 RDBMS 或日志服务器等外部系统抽取至数据仓库,进行清洗.转换.聚合等操作.在现代网站技术栈中,MySQL 是最常见的数据库管理系统,我们会从多个不 ...

最新文章

  1. VS Code – No source control providers 解决方法
  2. [原创] 为什么模除的时候一般建议选择素数来除?比如说hashtable的桶数会取一个素数...
  3. 基于 APIGateway 打造生产级别的 Knative 服务
  4. 用Fiddler在Android上抓HTTPS包
  5. Kubernetes监控之Heapster源码分析
  6. android sqlite 备份数据库文件,android – 将SQLite数据库备份和还原到sdcard
  7. Koa框架——coderhub实战
  8. Tensorflow学习—— Estimator简介
  9. 企业如何实际使用 Docker
  10. java mail header_java使用mail发送邮件时出现乱码如何解决
  11. Flex(try-catch-finally)机制
  12. django admin单例对象
  13. ORACLE常用系统查询
  14. 手动安装Apache+PHP+MYSQL及环境配置
  15. 【无标题】快宝电子面单接口
  16. “高精尖领域”的3D打印是这么玩 …
  17. 基于FPGA的循迹小车,控制器:Xilinx-Ego1
  18. pandas_计算年化收益率
  19. 【矩阵论】广义特征值问题
  20. Microsoft ADO Data Control,version 6.0(OLEDB) 不支持此接口

热门文章

  1. python录屏工具下载_Python移动端录屏库
  2. [线性规划 对偶原理 单纯形] BZOJ 3265 志愿者招募加强版
  3. future java 超时_Java使用Future设置方法超时
  4. 仿照word的多页面矢量绘图
  5. LaTeX数学公式、常用符号大全
  6. c语言课程设计报告-计算器的实现,C语言课程设计--一个简易计算器的设计与实现.doc...
  7. 打造最强浏览器之你真的会用浏览器吗?
  8. SpringBoot入门-分组校验
  9. archlinux、manjaro 出现的错误及解决办法(xmind pango报错,以及python创建虚拟环境,pyenv)
  10. 基数和权值对于各进制之间转换的意义