【干货分享】使用Redis的用户要请往这瞅瞅,小心数据泄漏!
【摘要】 Redis因配置不当可以未授权访问,很容易被攻击者恶意利用。当前业界已暴出多起因Redis漏洞导致主机被入侵、业务中断、数据丢失的安全事件,请用户务必警惕该漏洞的严重危害,防止造成无法挽回的损失。
根据华为云安全运维专家介绍,Redis的安全问题日益增多,Redis的漏洞未用户数据泄漏提供一种流行的渠道,需要各位看官多多了解。
1 Redis安全漏洞:
1、 Redis因配置不当可以未授权访问,很容易被攻击者恶意利用。如果Redis以root身份运行,黑客可以给root账户写入SSH公钥文件,直接通过SSH登录、控制服务器,引发重要数据泄漏或丢失,严重威胁用户业务和数据安全,风险极高,业界将此漏洞定位为高危漏洞。
2、 当前业界已暴出多起因Redis漏洞导致主机被入侵、业务中断、数据丢失的安全事件,请用户务必警惕该漏洞的严重危害,防止造成无法挽回的损失。
2 安全加固措施:
Redis安全加固主要从网络访问权限、账户执行权限两个方面入手:
2.1 网络访问权限2.1.1 设置防火墙
通过防火墙设置,充许业务ip访问,限制不必要ip访问,方法参考如下:
#例如只允许192.168.2.*这一段C类地址访问,其他IP地址禁止访问:
iptables -AINPUT -s 192.168.2.0/24,127.0.0.0/16 -p tcp --dport 6379 -j ACCEPT
iptables -AINPUT -p tcp --dport 6379 -j DROP
2.1.2修改redis.conf配置加固
如果用户仅仅是本地通讯,无需其他IP访问,则可以通过绑定127.0.0.1,确保redis本地监听,从而避免业务暴光在互联网上,方法如下:
修改/etc/redis/redis.conf 中配置,并重启redis使配置生效:
2.1.3 重命名关键命令进行加固
由于redis没有做基本的权限分离,没有管理账号、普通账户之分,所以登录之后无操作权限限制,因此需要将一些危险的操作隐藏起来,涉及的命令包括:
FLUSHDB,FLUSHALL, KEYS, PEXPIRE, DEL, CONFIG, SHUTDOWN, BGREWRITEAOF, BGSAVE, SAVE,SPOP, SREM, RENAME, DEBUG, EVAL
设置方法如下,编辑/etc/redis/redis.conf文件:
上述配置将config,flushdb,flushall设置为了空,即禁用该命令,保存之后,执行/etc/init.d/redis-serverrestart 重启生效
2.2 账号执行权限2.2.1 低权限账户
设置单独的redis账户运行redis,redis crackit漏洞就利用root用户的特性来重置authorized_keys从而达到控制系统主机的目的,使用普通帐号运行redis可以降低被利用的风险,如下:
创建一个redis账户,然后通过该账户启动redis,命令如下:
su - redis-c " /redis/bin/redis-server /redis/etc/redis.conf"
使用进程查看psaux|grep redis-server可见进程以redis运行
redis 3384 0.8 0.1 137440 4168? Ssl 17:43 0:00/redis/bin/redis-server 192.168.196.133:6379
2.2.2 认证
redis 默认没有开启密码认证,风险极高。手动开启认证方法:
1、打开/etc/redis/redis.conf配置文件,加入语句:requirepass Z1e4tNzOgk# 将认证密码设置为了Z1e4tNzOgk#(此密码为示例,请自行设置其它密码并妥善保管,务必注意密码复杂度不要使用含有键盘特征的密码)
2、保存redis.conf,重启redis(/etc/init.d/redis-server restart)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)