E044-服务漏洞利用及加固-利用redis未授权访问漏洞进行提权

news2024/11/24 4:34:57

任务实施:

E044-服务漏洞利用及加固-利用redis未授权访问漏洞进行提权

任务环境说明:

服务器场景:p9_kali-6(用户名:root;密码:toor)

服务器场景操作系统:Kali Linux  192.168.32.123

服务器场景:p9_linux-6(用户名:root;密码:123456)

服务器场景操作系统:Linux   192.168.32.147

---------------------------------------------------------------------------------------------------------------------------------

实验等级:

中级

任务场景:

【任务场景】

磐石公司邀请渗透测试人员对该公司内网进行渗透测试,由于企业网络管理员的疏忽,为了更方便的管理直接使用未开启授权访问redis服务器作为后台数据服务器,小王向管理员告知了该情况并还原黑客的攻击场景,介绍一些常用的攻击方法和安全知识。

任务分析:

【任务分析】

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

预备知识:

【预备知识】

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

        部分服务器上的Redis 绑定在 0.0.0.0:6379,并且没有开启认证(这是Redis 的默认配置),以及该端口可以通过公网直接访问,如果没有采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,将会导致 Redis 服务直接暴露在公网上,可能造成其他用户可以直接在非授权情况下直接访问Redis服务并进行相关操作。

有关Redis的相关知识

1、 Redis的数据类型:

字符串、列表(lists)、集合(sets)、有序集合(sorts sets)、哈希表(hashs)

2、Redis和memcache相比的独特之处:

  (1)redis可以用来做存储(storge)、而memcache是来做缓存(cache)。这个特点主要是因为其有“持久化”功能

  (2)存储的数据有“结构”,对于memcache来说,存储的数据,只有一种类型——“字符串”,而redis则可以存储字符串、链表、集合、有序集合、哈希结构

3、持久化的两种方式:

  Redis将数据存储于内存中,或被配置为使用虚拟内存。

实现数据持久化的两种方式:

      (1)使用截图的方式,将内存中的数据不断写入磁盘(性能高,但可能会引起一定程度的数据丢失)

      (2)使用类似mysql的方式,记录每次更新的日志

4、Redis的主从同步:对提高读取性能非常有益

5、Redis服务端的默认端口是6379

---------------------------------------------------------------------------------------------------------------------------------

网络拓扑

---------------------------------------------------------------------------------------------------------------------------------

实战复现

        在进行实验前,首先在靶机中使用命令iptables -F清空所有表链,然后使用命令service iptables save,保存对当前防火墙条例的修改,再然后回到渗透机中使用命令nmap -n -A -p 6379 --script redis-info 172.16.1.6通过nmap对服务器进行端口扫描信息,Redis默认使用的6379端口


靶机操作:
iptables -F 
service iptables save

回到渗透机
nmap -n -A -p 6379 --script redis-info 192.168.32.147

———————————————————————————————————————————

来到渗透机

可以发现当前服务器没有开启redis服务,那么我们进入到靶机中去打开该服务。

———————————————————————————————————————————

        进入靶机编辑/usr/local/redis/etc/redis.conf,编辑第69行,将bind后的地址改为0.0.0.0,并修改第88行的protected-mode yes改为no,最后修改507行将requirepass admin前面加上#

vi /usr/local/redis/etc/redis.conf

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

小技巧:
进入源码文件后,代码太多怎么办?不急,vim编辑器有自带的搜索符号
进入vim编辑器后 ,默认是阅读模式,按i或o键进入编辑模式
在阅读模式输入" / "号,后面跟上需要搜索的字符串,回车即可搜到。
看下面的例子:

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

然后使用命令/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf启动redis服务器

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

———————————————————————————————————————————

———————————————————————————————————————————

回到渗透,再次使用渗透机nmap进行端口扫描:

这里靶机的IP波动了一下,并无大碍:

        Nmap扫描后发现靶机的6379端口对所有开放,是可以用本地Redis去远程连接靶机服务器来获取Redis敏感数据(redis在开放往外网的情况下(默认配置是bind 127.0.0.1,只允许本地访问,如果配置了其他网卡地址那么就可以网络访问),默认配置下是空口令,端口为6379)。

实验结束,关闭虚拟机。

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

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

相关文章

【Qt高阶】Linux安装了多个版本的Qt 部署Qt程序,出包【2023.10.17】

简介 linux系统下可执行程序运行时会加载一些动态库so,有一些是Qt的库,Qt的库会加载其他更基础的库。最后出包的时候需要把依赖的包整理到一个文件夹,来制作安装包。近期遇到已经将依赖的so文件拷贝至程序目录下,但还是调系统路径…

AutoCAD 2024:计算机辅助设计(CAD)软件中文版

AutoCAD是一款广受全球设计师和工程师欢迎的计算机辅助设计(CAD)软件。自1982年首次推出以来,AutoCAD已经经历了多次迭代和改进,不断提升用户在产品设计、建造和工程领域的工作效率。现在,让我们一起探索AutoCAD 2024的…

MySQL中的存储过程

MySQL中的存储过程 概述 由MySQL5.0 版本开始支持存储过程。 如果在实现用户的某些需求时,需要编写一组复杂的SQL语句才能实现的时候,那么我们就可以将这组复杂的SQL语句集提前编写在数据库中,由JDBC调用来执行这组SQL语句。把编写在数据库…

横向移动如何阻止以及防范?

文章目录 背景总结EDR设备监测 (这里以奇安信网神云锁为例) 背景 今天面试,面试官问到了这一个问题,云主机被getshell了,进行了横向移动,如何进行阻止以及防范?当时回答了两个点:通过防火墙出入站策略设置…

HTX 与 Zebec Protocol 展开深度合作,并将以质押者的身份参与 ZBC Staking

自2023年下半年以来,加密市场始终处于低迷的状态,在刚刚结束的9月,加密行业总融资额创下2021年以来的新低,同时在DeFi领域DEX交易额为318.9亿美元,同样创下2021年1月以来的新低。 对于投资者而言,难以从外生…

Apache DolphinScheduler 3.0.0 升级到 3.1.8 教程

安装部署可参考官网 Version 3.1.8/部署指南/伪集群部署(Pseudo-Cluster)https://dolphinscheduler.apache.org/zh-cn/docs/3.1.8/guide/installation/pseudo-cluster 也可以参考我写贴子 DolphinScheduler 3.0安装及使用-CSDN博客DolphinScheduler 3.0版本的安装教程https:…

微信查分,原来这么简单,老师必看攻略

哈喽,亲爱的老师们!是不是经常为了查找学生的成绩而烦恼呢?别担心,今天我就来给大家分享一个超级实用的教程——在微信里查分!快来一起了解一下吧! 首先,我们要清楚成绩查询页面是什么。一般来说…

成都优优聚是专业美团代运营吗?

成都优优聚是一家专注于美团代运营的公司。作为全国知名的美团代运营服务商,成都优优聚拥有丰富的经验和优秀的团队,为各类商家提供全方位的美团代运营解决方案。 美团作为目前国内最大的O2O平台之一,拥有庞大的用户基础和强大的品牌影响力。…

激光雷达标定板精准识别前方障碍物

商用车自动驾驶率先进入商业化运营阶段,这主要是由于商用车对价格的敏感度更低、B端付费意愿更高,以及场景交通复杂程度较低和政策鼓励等因素。在矿区、港口、干线物流、机场、物流园区等细分场景,高级别自动驾驶正在孕育新市场。其中&#x…

【java学习—八】对象类型转换Casting(1)

文章目录 1. 数据类型转换1.1 基本数据类型的 Casting1.2. 对 Java 对象的强制类型转换(造型)2. 对象类型转换举例 1. 数据类型转换 数据类型转换分为基本数据类型转换和对象类型转换。 1.1 基本数据类型的 Casting (1) 自动类型转换:小的数据类型可以自动转换成…

如果你有一次自驾游的机会,你会如何准备?

常常想来一次说走就走的自驾游,但是光是想想就觉得麻烦的事情好多:漫长的公路缺少娱乐方式、偏僻拗口的景点地名难以导航、不熟悉的城市和道路容易违章…… 也因为如此,让我发现了HUAWEI HiCar这个驾驶人的宝藏! 用HUAWEI HiCar…

value too long for type character varying报错处理

瀚高数据库 目录 环境 症状 问题原因 解决方案 环境 系统平台:N/A 版本:4.5 症状 使用insert into插入数据时出现报错value too long for type character varying 问题原因 458新增NLS_LENGTH_SEMANTICS参数,默认设置为byte。之前版本默认为…

nordic平台SDK包下载地址

nRF5 SDK downloads - nordicsemi.com

消灭指标二义性!提效30%的指标管理如何炼成?

众所周知,「指标」是企业通过数据分析衡量业绩的重要参数。然而,不同部门、不同渠道往往存在不同的使用场景和术语体系。 举个例子: 这是一家知名的服饰品牌,不同平台渠道归属于不同部门管理。 适逢双11大促,老板说&…

Tmux:终端复用器的基本使用(一)

tmux(也称为终端多路复用器)是一个强大的终端工具,旨在提高终端用户的工作效率。它允许用户在一个终端窗口内创建多个会话和窗格,从而轻松地在一个屏幕上同时运行多个终端应用程序。tmux 的目标是将多个终端会话和任务组织在一个简…

基于SSM+Vue的毕业生跟踪调查反馈系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

米哈游、复旦发布,具备感知、大脑、行动的大语言模型“智能体”

ChatGPT等大语言模型展示了前所未有的创造能力,但距AGI(通用人工智能)还有很大的距离,缺少自主决策、记忆存储、规划等拟人化能力。 为了探索大语言模型向AGI演变,进化成超越人类的超级人工智能,米哈游与复…

分治类dp:1017T3

http://cplusoj.com/d/senior/p/SS231017C 感觉可以分治某个区间 [ l , r ] [l,r] [l,r],且他们都是在下面 k k k 已经选的基础上 然后肯定要枚举最大值,最大值越长越好 Hint 1 Hint 2 f ( l , r , k ) f(l, r, k) f(l,r,k) 可以通过枚举 m i d mid…

深入理解强化学习——强化学习智能体的四要素:模型(Model)

分类目录:《深入理解强化学习》总目录 相关文章: 强化学习智能体的四要素:策略(Policy) 强化学习智能体的四要素:收益信号(Revenue Signal) 强化学习智能体的四要素:价…

ubunu 18.04 LTS安装Qt-5.14-2并一起安装Qt Creator

作为初级qt用户,一定下载Qt的.run安装文件。 之前我安装5.15.10版本的源码,安装后一头雾水。 后来,我安装了低一点的版本5.14.2,它含有.run安装文件,比较顺利。 下面记录一下ubunu 18.04 LTS安装Qt-5.14-2并一起安装Q…