这篇文章主要介绍“MySQL 数据服务基线安全问题怎么解决”,在日常操作中,相信很多人在 MySQL 数据服务基线安全问题怎么解决问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL 数据服务基线安全问题怎么解决”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
问题分析
遍观 MongoDB 和 Elasticsearch 以及现在的 MySQL 数据库勒索,可以发现都是基线安全问题导致被黑客劫持数据而勒索,原因在于这些服务都开放在公网上,并且存在空密码或者弱口令等使得攻击者可以轻易暴力破解成功,直接连上数据库从而下载并清空数据,特别是不正确的安全组配置导致问题被放大。
其实类似问题已不是第一次,近期云鼎实验室观测到多起案例,攻击呈现扩大态势,不仅仅是勒索,更多的是服务器被入侵,从而导致数据被下载。基线安全问题已经成了 Web 漏洞之外入侵服务器的主要途径,特别是弱口令等情况。错误的配置可以导致相关服务暴露在公网上,成为黑客攻击的目标,加上采用空密码等弱口令,黑客可以轻易入侵这些服务。
安全自查
值此事件爆发之际,建议对自己的服务器进行自查,避免相关数据丢失等问题,具体自查方式可参考如下:
1、排查服务器开放的端口及对应的服务,如无必要,关闭外网访问;可以使用 NMap 直接执行 nmap 服务器 IP(在服务器外网执行),可得到以下结果即为开放在外网的端口和服务。
2、重点针对这些开放在公网上的服务进行配置的检查,检查相关服务是否设置密码,是否弱口令。
3、如无必要,均不要使用 root 或者其他系统高权限账号启动相关服务。
安全建议及修复方案
一、采用正确的安全组或者 iptables 等方式实现访问控制;
二、关闭相关服务外网访问和修改弱密码:
1、MongoDB
a. 配置鉴权
下面以 3.2 版本为例,给出 MongoDB 设置权限认证,具体步骤如下:
启动 MongoDB 进程是加上 -auth 参数或在 MongoDB 的配置文件中加上 auth = true;
带 auth 启动的 MongoDB,如未创建用户,MongoDB 会允许本地访问后创建管理员用户。创建步骤如下:
1. 切换到 admin 库;2. 创建管理员用户,命令如下 (user 和 pwd 可以根据需要设置):db.createUser({user: root ,pwd: password ,roles: [ root
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. 配置鉴权
修改配置文件,增加“requirepass 密码”项配置(配置文件一般在 /etc/redis.conf)
在连接上 Redis 的基础上,通过命令行配置,config set requirepass yourPassword
b. 关闭公网访问
配置 bind 选项,限定可以连接 Redis 服务器的 IP,修改 Redis 的默认端口 6379
c. 其他
配置 rename-command 配置项“RENAME_CONFIG”,重名 Redis 相关命令,这样即使存在未授权访问,也能够给攻击者使用 config 指令加大难度(不过也会给开发者带来不方便)
相关配置完毕后重启 Redis-server 服务
3、MySQL
a. 配置鉴权
MySQL 安装默认要求设置密码,如果是弱命令,可通过以下几种方式修改密码:
UPDATE USER 语句
// 以 root 登录 MySQL 后, USE mysql; UPDATE user SET password=PASSWORD(新密码) WHERE user= root
FLUSH PRIVILEGES;
SET PASSWORD 语句
// 以 root 登录 MySQL 后, SET PASSWORD FOR root=PASSWORD(新密码
mysqladmin 命令
mysqladmin -u root -p 旧密码 新密码
b. 关闭公网访问
启动参数或者配置文件中设置 bind-address= IP 绑定内部 IP
以 root 账号连接数据库,排查 user 表中用户的 host 字段值为 % 或者非 localhost 的用户,修改 host 为 localhost 或者指定 IP 或者删除没必要用户
到此,关于“MySQL 数据服务基线安全问题怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!