redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程

前言

redis是一个高性能的key-value数据库,也经常被使用,今天来看看redis里面有什么好的利用方式,其一是利用redis写入shell,第二个就是写入ssh公钥进行登录。

redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程(1)

FOfa语法

protocol="redis" && banner="redis_version" && port="6379”Redis简介

Redis(Remote Dictionary Server ),即远程字典服务,是⼀个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

Redis是⼀个key-value存储系统,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set —有序集合)和hash(哈希类型)。这些数据类型都支持 push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached⼀样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Ubuntu apt安装

sudo apt install redis-server redis-server redis-cliRedis命令

redis分为服务器端和客户端,服务端上执行的是客户端发送过来的命令。Redis在安装完成之后会有redis-cli。

redis-cli -h host #免密登录 redis-cli -h host -p port -a password #使用Redis密码登录Redis服务 #与Redis服务器连接成功后 执行ping 会返回⼀个PONGRedis配置文件

Redis的配置文件位于Redis安装目录下,文件名为redis.conf(Windows名为redis.windows.conf)。当然也可以通过指定配置文件来进行启动。列举⼀些重要的配置项进行说明。

redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程(2)

Redis漏洞利用

1)前置条件

  • 将redis 绑定到 0.0.0.0 (⼀般会通过ssrf gopher进行利用);
  • 没有绑定redis到任何地址将protected-mode参数为no;
  • 使用redis-server 启动redis服务 redis-cli 本地连接,启动成功。

redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程(3)

将bind 改为 0.0.0.0

redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程(4)

修改成功:

redis未授权正确的修复方案 Redis未授权漏洞到shell利用过程(5) 第一页123下一页

〖特别声明〗:本文内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。如有侵犯您的原创版权或者图片、等版权权利请告知 wzz#tom.com,我们将尽快删除相关内容。

赞 ()
打赏 微信扫一扫 微信扫一扫

相关推荐