一、漏洞描述和危害 

 
Redis因配置不当可以未授权访问,被***者恶意利用。
***者无需认证访问到内部数据,可能导致敏感信息泄露,***也可以恶意执行flushall来清空所有数据。

***者可通过EVAL执行lua代码,或通过数据备份功能往磁盘写入后门文件,如果Redis以root身份运行,***可以给root账户写入SSH公钥文件,直接通过SSH登录受害服务器。
 

二、已确认被成功利用的软件及系统  
 
对公网开放,且未启用认证的redis服务器。

三、建议修复方案
 
1、指定redis服务使用的网卡 (
需要重启redis才能生效
在 redis.conf 文件中找到 “# bind 127.0.0.1” ,把前面的#号去掉,然后保存。注:修改后只有本机才能访问Redis。
 
2、设置访问密码 (
需要重启redis才能生效
在 redis.conf 中找到“requirepass”字段,在后面填上你需要的密码,Redis客户端也需要使用此密码来访问Redis服务。
 
3、修改Redis服务运行账号 
请以较低权限账号运行Redis服务,且禁用该账号的登录权限。可以限制***者往磁盘写入文件,但是Redis数据还是能被***访问到,或者被***恶意删除。

 

4、设置防火墙策略

如果正常业务中Redis服务需要被其他服务器来访问,可以设置iptables策略仅允许指定的IP来访问Redis服务。