一、总概
1.服务判断:
2.对象类别:
3.利用方法:
二、数据库-Redis-未授权 RCE&CVE
0.首先我们先来了解一下什么是redis?
1.原理
Redis默认情况下,会绑定0.0.0.0:6379
,如果没有采用相关的策略,比如添加防火墙规则表面其他非信任来源IP访问等,这样会将Redis服务暴露到公网上,如果在没有设置密码认证 (一般为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取Redis的数据
攻击者在未授权访问Redis的情况下,利用Redis自身提供的config命令,可以进行写文件操作,攻击者可以成功将自己的ssh公钥 写入目标服务器的/root/.ssh
文件夹中authotrized_keys文件中,进而可以只用对应私钥直接使用ssh服务登录目标服务器。
2.条件或者说如何初步判断漏洞是否存在
2.1他的端口暴露在公网上,我们可以直接用fofa等搜索引擎搜索redis的默认端口6379进行相关搜索。
2.2通过redis管理工具尝试连接,如果可以直接连接上去那就很有可能存在未授权访问漏洞,就可以进行尝试利用
3.漏洞复现
我们通过复现一些漏洞来进一步加深对这个漏洞的印象。
3.1VULFOCUS-redis未授权访问(CNVD-2019-21763 )
4.漏洞危害
- 攻击者无需认证访问到内部数据,可能导致敏感信息泄露,黑客也可以恶意执行
flushall
来清空所有数据 - 攻击者可通过
EVAL
执行lua代码,或通过数据备份功能往磁盘写入后门程序 - 最严重的情况,如果Redis以root身份与运行,黑客可以给root账户写入SSH公钥文件直接通过SSH登录受害服务器
5.漏洞修复
2、 iptables策略仅允许指定的IP来访问Redis服务
3、 设置访问密码 (需要重启redis才能生效), redis.conf 中找到“requirepass”字段添加密码。
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » 服务攻防之Redis数据库安全
发表评论 取消回复