博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
警惕!MySQL成数据勒索新目标
阅读量:6985 次
发布时间:2019-06-27

本文共 2557 字,大约阅读时间需要 8 分钟。

hot3.png

据最新报道显示,继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.x2. 在配置文件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('新密码');

3. mysqladmin命令

mysqladmin -u root -p 旧密码 新密码

b. 关闭公网访问1. 启动参数或者配置文件中设置bind-address= IP绑定内部IP2. 以root账号连接数据库,排查user表中用户的host字段值为%或者非localhost的用户,修改host为localhost或者指定IP或者删除没必要用户**4、其他服务**请参考以上方式或者官方文档进行配置### 参考链接1. 《避免 MongoDB 被勒索详解,腾讯云上更安全》http://t.cn/RiVUEdY2. 《下一个猎杀目标:近期大量MySQL数据库遭勒索攻击》http://t.cn/Ri5ES1T3. 《知名搜索引擎Elasticsearch成为勒索软件敲诈目标》http://t.cn/RiVUgFD4. 《Redis 未授权访问配合 SSH key 文件利用分析》http://t.cn/RUO9UGY#### 相关推荐[【黑客解析】黑客是如何实现数据库勒索的?](https://www.qcloud.com/community/article/103519001489115432?fromSource=gwzcw.5997.5997.5997)> 本文首发腾云阁 [警惕!MySQL成数据勒索新目标](https://www.qcloud.com/community/article/519598001488335177?fromSource=gwzcw.6000.6000.6000),更多技术干货,请访问[「腾云阁」](https://www.qcloud.com/community?fromSource=gwzcw.6002.6002.6002)

转载于:https://my.oschina.net/qcloudcommunity/blog/848670

你可能感兴趣的文章
单播包、广播包、组播包、洪泛包
查看>>
iptables命令结构之命令
查看>>
RabbitMQ之Exchange分类
查看>>
综合布线系统的构成
查看>>
计算机硬件 — 计算机简介
查看>>
关于重写session实现的时候可能会导至nginx 502的问题
查看>>
7z(p7zip)压缩软件在Linux下的安装和使用
查看>>
jetbrick-template 1.1.0 发布,支持 #tag, #macro, layout
查看>>
TCP的六个控制位
查看>>
进制转换
查看>>
我的友情链接
查看>>
新书上市:《FLUENT 14.0超级学习手册》
查看>>
mysql数据库query cache
查看>>
使用docker commit 来扩展一个image
查看>>
jsp 防止sql注入 之 preparestatement篇(转载)
查看>>
Linux之Ansible入门用法(实验解析)
查看>>
Linux系统如何在开机时修改root密码
查看>>
Anychat的绝对路径与相对路径
查看>>
我的友情链接
查看>>
如何使用网络库实现应用级消息收发
查看>>