TIER 0: Redeemer

TIER 0: Redeemer

Redis

Remote Dictionary Server 是一个开源的内存数据存储系统

  • Redis 是完全基于 内存,“内存”数据库的数据检索时间⾮常短,因此提供⾮常⾼效和最短的响应时间。
  • 也支持将数据写入磁盘,以保证数据持久性。
  • Redis 的架构非常简单,它由单个线程运行,避免了锁等并发控制问题,使得 Redis 的性能非常高。

作为传统数据库(如 MySQL 或 MongoDB)与 Web 应用程序之间的高速缓存层。

Redis 命令

这里是对靶机进行攻略,不详细说明 Redis 命令,具体可参考 Redis 命令参考

redis-cli

redis-cli 是 Redis 提供的官方命令行工具,用于与 Redis 服务器进行交互和操作。如果没有安装,在对应 Linux 发行版的包管理器安装即可。如果是其它操作系统,可参考 Redis 官方文档 进行安装。

我使用的是 Debian 系 Linux,通过 apt install redis-cli 安装。

redis-cli 连接到 Redis 服务器:

redis-cli -h <hostname> -p <port>
  • -h 指定 Redis 服务器的主机名,填靶机地址就即可
  • -p 指定 Redis 服务器的端口,补充 Redis 默认监听在 TCP/6379 端口,当然实战应该根据 nmap 等扫描工具分析结果而定,因为可能会有多个 Redis 服务或者 Redis 服务监听在其它端口。

如果 Redis 服务器运行在本地,可以省略主机名和端口号。如果你想要进一步学习通过 redis-cli --help 命令来查看其帮助⻚⾯ 😘

INFO

INFO 命令用于获取关于 Redis 服务器的各种信息和统计数据。它提供了关于服务器状态、客户端连接、内存使用、持久化配置、复制信息等方面的详细信息。

返回的信息包括但不限于以下几个方面:

  • server:关于服务器的信息
  • clients:有关客户端连接的信息
  • memory:有关内存使用情况的信息
  • persistence:持久化配置相关的信息
  • replication:复制相关的信息
  • stats:各种统计信息
  • cpu:关于 CPU 使用情况的信息

我们关注 Keyspace 部分提供的每个数据库的主字典的统计信息,包括密钥数量和过期密钥数量。

键操作

下面我们要做的是使用 SELECT 命令用于切换 Redis 数据库查看其中键值。实际本次 flag 就是其中键值 🤐

键操作是 Redis 中对键值存储进行操作的基本命令。Redis 是一种键值存储系统,它使用键(key)和值(value)的结构来存储和检索数据。相信学习过任意一门编程语言【大部分】都应该理解 键值对 这个概念吧,不了解不用担心,搜索引擎会帮助你 🤗

  • 使用 KEYS * 可以查看当前数据库中所有的键。
  • 使用 GET <key> 可以获取指定键的值。

记着确认自己的数据库是否切换到了 0,如果没有,使用 SELECT 0 切换到 0 号数据库。

结尾

Redeeemer 靶机主要是对 Redis 的基本操作,如果你对 Redis 有一定的了解,那么这个靶机应该不难。如果你对 Redis 不了解,那么这个靶机应该是一个很好的入门靶机。

如果你想要了解 Redis 更多 😏 https://redis.io/topics/quickstart

posted @ 2023-05-17 20:15  sha0dow  阅读(48)  评论(0编辑  收藏  举报