【安全通告】警惕Meow 攻击自动删除不安全的Elasticsearch及MongoDB数据库
摘要:
尊敬的腾讯云用户,您好!
近日,腾讯云安全运营中心监测到,近期出现一种新的针对数据库未授权漏洞的利用方式(Meow攻击),攻击者使用自动化脚本扫描开放的不安全Elasticsearch 和 MongoDB 数据库 ,找到之后直接将其删除。
为避免您的业务受影响,腾讯云安全建议您及时开展安全自查,如在受影响范围,请您及时进行更新修复,避免被外部攻击者入侵。
风险详情
攻击者利用自动化脚本扫描开放的不安全Elasticsearch 和 MongoDB 数据库,扫描到未授权访问的数据库后,就直接进行删除操作,不留下任何通知,同时在日志中留下 $randomstring-meow 的信息。
风险等级
高风险
攻击风险
数据库被恶意删除
影响对象
未授权访问的Elasticsearch 和 MongoDB 数据库
修复建议
![]()
出现该攻击的原因在于这些服务都开放在公网上,并且存在空密码或者弱口令等问题,使得攻击者可以通过自动化方式轻易暴力破解成功,直接连上数据库从而下载或删除、清空数据 ,腾讯云安全建议您:
1、高危端口自查:排查服务器开放的端口及对应的服务,如无必要,关闭外网访问;可以使用 NMap 直接执行 nmap 服务器IP(在服务器外网执行)
2、安全服务加固:
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: "passwordxxxx",roles: [ "root" ]})
3.使用管理员用户登录后,根据角色创建您需要的用户
b. 关闭公网访问,可通过MongoDB的bind_ip启动参数进行配置,只需将IP绑定为内网IP即可,如下:
c. 限制访问,在安全组限制只允许指定IP才能访问9200端口
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)Elasticsearch安全加固:
a. 限制访问,9200端口不要对外开放,如需开放,建议在安全组限制只允许指定IP才能访问9200端口;
b. 配置认证,在config/elasticsearch.yml中为9200端口设置认证,相关配置参数可参考:
http.basic.enabled true #启动认证,开启会接管全部HTTP连接
http.basic.user "admin" #配置认证账号
http.basic.password "admin_pwxxxxx" #配置复杂认证密码
http.basic.ipwhitelist ["localhost", "127.0.0.1"]
漏洞参考
1)MongoDB修复参考:https://cloud.tencent.com/developer/article/1004600
2)ElasticSearch修复参考:https://cloud.tencent.com/developer/article/1624456