Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-25589-25588-25243-23631-23479-REDIS — Redis の5件のCVEに対する診断・修復スクリプトです。認証済みRCE脆弱性に対して、スキャン、ACLベースの緩和策、設定強化のガイダンスを提供します。 | Kitploit
ツール/GitHubGitHub/mgiay/cve-2026-25589-25588-25243-23631-23479-redis
脆弱性分析構成監査学習と教育厳選リソースデータベースセキュリティ
GitHubmgiay/cve-2026-25589-25588-25243-23631-23479-redis

CVE-2026-25589-25588-25243-23631-23479-REDIS

Redis の5件のCVEに対する診断・修復スクリプトです。認証済みRCE脆弱性に対して、スキャン、ACLベースの緩和策、設定強化のガイダンスを提供します。

リポジトリを見る
3ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Redis 5件のCVEに対するテスト・修正ガイド(2026.05.08時点)

公開日: 2026-05-08 著者: TonyCao ([email protected]) 出典: Redis Security Advisory


目次

  1. 概要
  2. 影響を受けるバージョン
  3. 各CVEの詳細
    • CVE-2026-23479 — Unblock Client FlowにおけるUse-after-free
    • CVE-2026-25243 — RESTOREにおけるInvalid Memory Access
    • CVE-2026-25588 — RedisTimeSeries Moduleを利用したRESTORE
    • CVE-2026-25589 — RedisBloom Moduleを利用したRESTORE
    • CVE-2026-23631 — Master-Replica Syncを介したLua Use-After-Free
  4. スクリプトの使用方法
  5. 一般的な修正方法
  6. リスク評価 — 内部Redis / Sentinelシステム
  7. ACLリファレンス
  8. 定期テスト手順
  9. よくある質問(FAQ)

概要

2026年5月5日、Redis Ltd.はRedis OSS/CEの全バージョンに影響を与える5件の重大なセキュリティ脆弱性に関するセキュリティアドバイザリを公開しました。これらのCVEはすべて、悪用に成功した場合に**リモートコード実行(RCE)**につながる可能性があります。

#CVEコードCVSS深刻度エラータイプ悪用条件
1CVE-2026-234797.7HIGHUse-After-Free認証済み、blockingコマンド実行権限あり
2CVE-2026-252437.7HIGHInvalid Memory Access認証済み、RESTORE実行権限あり
3CVE-2026-255887.7HIGHInvalid Memory Access認証済み、RESTORE権限 + RedisTimeSeriesモジュールあり
4CVE-2026-255897.7HIGHInvalid Memory Access認証済み、RESTORE権限 + RedisBloomモジュールあり
5CVE-2026-236316.1MEDIUMUse-After-Free認証済み、replica-read-only = disabledのレプリカ

共通点: すべてのCVEは、攻撃者がRedisインスタンスに対して認証済みであることを要求します。CVE-2026-23631は、replica-read-only disabled設定のレプリカにのみ影響します。


影響を受けるバージョン

Redis OSS/CE — パッチ適用前の全バージョン

バージョンライン修正済みバージョン(最低)
6.2.x6.2.22
7.2.x7.2.14
7.4.x7.4.9
8.2.x8.2.6
8.4.x8.4.3
8.6.x8.6.3

モジュール — 修正済みバージョン

モジュール最低バージョン
RedisTimeSeries1.12.14 / 1.10.24 / 1.8.23
RedisBloom2.8.20 / 2.6.28 / 2.4.23

Redis Software(Enterprise)

バージョンパッチ
8.0.68.0.10-64
7.22.27.22.2-79
7.8.67.8.6-253
7.4.67.4.6-279
7.2.47.2.4-153

Redis Cloud

すべてのRedis Cloudデプロイメントは、アドバイザリ公開時点で自動的にパッチ適用済みです。


各CVEの詳細

CVE-2026-23479

属性値
タイトルUnblock Client FlowにおけるUse-After-Free
CVSS 4.07.7(HIGH)
CWECWE-416(Use After Free)
ベクターAV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
条件認証済みの攻撃者、blockingコマンド実行権限あり
範囲すべてのRedis OSS/CE、Redis Software <= 8.0.6

技術的説明

ブロックされたクライアント(例:BLPOPで待機中)が、ブロックされたコマンドの再実行中にevictされた場合、processCommandAndResetClient関数がエラーを返す可能性があります。現在のコードはこのケースを正しく処理しておらず、解放済みメモリ領域を参照するポインタ(use-after-free)が発生します。攻撃者はこのUAFを悪用してリモートコード実行(RCE)を行う可能性があります。

検出の兆候

  • unblock client、processCommandAndResetClient関連の関数を含むスタックトレースを伴うRedisサーバークラッシュ
  • redis-serverプロセスによる不明なコマンドの実行
  • Redisインスタンスへの許可されていないネットワーク接続

影響を受けるblockingコマンド```

BLPOP, BRPOP, BRPOPLPUSH, BLMOVE, BLMPOP, BZPOPMIN, BZPOPMAX, BZMPOP, WAIT, WAITAOF, XREAD, XREADGROUP

root@kitploit:~
#### 修復方法(アップグレードなし)

**方法1 — ACLによるブロック(推奨):**```bash
# Chặn toàn bộ nhóm lệnh blocking
redis-cli ACL SETUSER default -@blocking

# Hoặc chặn từng lệnh cụ thể
redis-cli ACL SETUSER default -BLPOP -BRPOP -BRPOPLPUSH -BLMOVE -BLMPOP \
                              -BZPOPMIN -BZPOPMAX -BZMPOP \
                              -WAIT -WAITAOF \
                              -XREAD -XREADGROUP

# Lưu ACL
redis-cli ACL SAVE

方法2 — 通过rename-command禁用(需要重启Redis):```bash

Thêm vào redis.conf:

rename-command BLPOP "" rename-command BRPOP "" rename-command BRPOPLPUSH "" rename-command BLMOVE "" rename-command BLMPOP "" rename-command BZPOPMIN "" rename-command BZPOPMAX "" rename-command BZMPOP "" rename-command WAIT "" rename-command WAITAOF "" rename-command XREAD "" rename-command XREADGROUP ""

root@kitploit:~
**方法3 — 启用protected-mode并限制连接:**```bash
redis-cli CONFIG SET protected-mode yes
# Trong redis.conf:
protected-mode yes
bind 127.0.0.1

CVE-2026-25243

属性値
タイトルRESTORE コマンドにおける無効なメモリアクセス
CVSS 4.07.7 (HIGH)
CWECWE-20 (不適切な入力検証) + CWE-122 (ヒープバッファオーバーフロー)
ベクターAV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
条件認証済みの攻撃者で、RESTORE の実行権限を持つこと
影響範囲すべての Redis OSS/CE、Redis Software <= 8.0.6

技術的説明

この脆弱性は、以下の 2 つのサブ問題で構成されます。

  1. Redis コアにおける double-free(Emil Lerner 氏による発見)— 特別に細工されたシリアライズ済みペイロードを RESTORE が処理することで、同じポインタに対してメモリが 2 回解放されます。
  2. VectorSets における整数オーバーフローと範囲外読み取り(Joseph Surin 氏による発見)— 特別に細工されたペイロードが整数オーバーフローを引き起こし、割り当てられたメモリ領域外での読み取り/書き込みにつながります。

認証済みの攻撃者が特別に細工した RESTORE ペイロードを送信して上記の欠陥を悪用すると、redis-server プロセスのコンテキストで RCE につながる可能性があります。

兆候

  • Redis サーバーの異常なクラッシュ
  • システムファイルの変更(特に Redis の RDB/AOF/config を含むディレクトリ内)
  • Redis インスタンスとの間の許可されていないネットワーク接続
  • Redis 設定ファイルの変更

修正方法(アップグレードなし)

方法 1 — ACL による RESTORE のブロック(推奨):```bash

Chặn lệnh RESTORE

redis-cli ACL SETUSER default -restore

Hoặc chặn toàn bộ nhóm lệnh nguy hiểm

redis-cli ACL SETUSER default -@dangerous

redis-cli ACL SAVE

root@kitploit:~
**方法2 — 禁用RESTORE(需要重启Redis):**```bash
# Thêm vào redis.conf:
rename-command RESTORE ""

方法3 — 为应用程序创建独立的用户ACL:```bash

Tao user cho ung dung chi voi quyen doc/ghi co ban

redis-cli ACL SETUSER app_user on >StrongPass123 ~*
+@read +@write
-@dangerous
-@admin
-@scripting
-@blocking
-restore
-debug

redis-cli ACL SAVE

root@kitploit:~
---

### CVE-2026-25588

| 属性          | 値                                                                |
| ------------- | ------------------------------------------------------------------ |
| **タイトル**  | RedisTimeSeries モジュールを使用した RESTORE における無効なメモリアクセス |
| **CVSS 4.0**  | **7.7 (HIGH)**                                                     |
| **CWE**       | CWE-20 + CWE-122                                                   |
| **ベクター**  | `AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N`           |
| **条件**      | 認証済み + RESTORE 権限 + **RedisTimeSeries モジュールがロード済み** |
| **影響範囲**  | Redis OSS/CE + RedisTimeSeries モジュール                          |

#### 技術的説明

**RedisTimeSeries モジュール**がロードされたインスタンスで `RESTORE` コマンドが使用されると、特別に細工されたシリアライズペイロードが time-series データの処理中に無効なメモリアクセスを引き起こす可能性があります。この脆弱性は、RedisTimeSeries モジュールが RESTORE ペイロードからデータをデシリアライズする方法に存在します。

#### 識別の兆候

- RedisTimeSeries モジュールに関連するスタックトレースを伴う Redis のクラッシュ
- RedisTimeSeries モジュールがロードされている(`MODULE LIST` に timeseries が表示される)
- redis-server による予期しないコマンド実行

#### 修復方法(アップグレードなし)

**方法 1 — ACL による RESTORE のブロック:**(CVE-2026-25243 と同様)```bash
redis-cli ACL SETUSER default -restore
redis-cli ACL SAVE

方法2 — 移除RedisTimeSeries模块(如果不需要):```bash redis-cli MODULE UNLOAD timeseries

root@kitploit:~
Sau đó xóa dòng sau khỏi `redis.conf`:```
loadmodule /path/to/redistimeseries.so

方法3 — 仅升级模块(不升级Redis):

下载已修补的模块版本:

  • RedisTimeSeries 1.12.14(适用于1.12系列)
  • RedisTimeSeries 1.10.24(适用于1.10系列)
  • RedisTimeSeries 1.8.23(适用于1.8系列)```bash

Thay the file .so cu bang phien ban moi

Sau do restart Redis hoac:

redis-cli MODULE UNLOAD timeseries redis-cli MODULE LOAD /path/to/new/redistimeseries.so

root@kitploit:~
### CVE-2026-25589

| 属性        | 値                                                                             |
| ----------- | ------------------------------------------------------------------------------ |
| **タイトル** | RedisBloom モジュールを使用した RESTORE における無効なメモリアクセス            |
| **CVSS 4.0** | **7.7 (HIGH)**                                                                 |
| **CWE**     | CWE-20 + CWE-122 + CWE-787 (Out-of-Bounds Write) + CWE-190 (Integer Overflow)  |
| **ベクター** | `AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N`                       |
| **条件**    | 認証済み + RESTORE 権限 + **RedisBloom モジュールがロード済み**                 |
| **範囲**    | Redis OSS/CE + RedisBloom モジュール                                           |

#### 技術的説明

この脆弱性は、RedisBloom モジュールが RESTORE ペイロードを処理する際の複数のサブイシューで構成されています。

1. **Out-Of-Bounds read/write** (Daniel Firer) — 割り当てられたメモリ範囲外の読み取り/書き込み
2. **Integer overflow、heap buffer overflow、および OOB read/write** (Joseph Surin) — 整数オーバーフローによるヒープバッファオーバーフロー

RedisBloom モジュールがロードされている場合、攻撃者は特別に細工された RESTORE ペイロードを送信し、Bloom filter、Cuckoo filter、Count-Min Sketch、または Top-K データのデシリアライズ処理中に上記のエラーを悪用できます。

#### 検出の兆候

- RedisBloom モジュールに関連するスタックトレースを伴う Redis のクラッシュ
- RedisBloom モジュールがロードされている (`MODULE LIST` に bf/bloom が表示される)
- Bloom filter 内のデータが破損している、または異常に変更されている

#### 修正方法 (アップグレードなし)

**方法 1 — ACL による RESTORE のブロック:** (CVE-2026-25243 と同様)```bash
redis-cli ACL SETUSER default -restore
redis-cli ACL SAVE

方法2 — 卸载RedisBloom模块(如果不需要):```bash redis-cli MODULE UNLOAD bf

root@kitploit:~
`redis.conf` から次の行を削除します:```
loadmodule /path/to/redisbloom.so

方法3 — 仅升级模块(不升级Redis):

下载已修补的模块版本:

  • RedisBloom 2.8.20(适用于2.8系列)
  • RedisBloom 2.6.28(适用于2.6系列)
  • RedisBloom 2.4.23(适用于2.4系列)```bash redis-cli MODULE UNLOAD bf redis-cli MODULE LOAD /path/to/new/redisbloom.so
root@kitploit:~
---

### CVE-2026-23631

| 属性          | 値                                                              |
| ------------- | ---------------------------------------------------------------- |
| **タイトル**  | Master-Replica 同期を介した Lua Use-After-Free                  |
| **CVSS 4.0**  | **6.1 (MEDIUM)**                                                 |
| **CWE**       | CWE-416 (Use After Free)                                         |
| **ベクター**  | `AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N`         |
| **条件**      | 認証済み + **replica** で `replica-read-only` = **disabled**     |
| **影響範囲**  | Lua スクリプティングを備えたすべての Redis OSS/CE、**replica のみ** |
| **コードネーム** | "DarkReplica" (Yoni Shiraz, Wiz Zeroday Cloud)                   |

#### 技術的説明

認証済みの攻撃者は、master-replica 同期メカニズムを悪用して特別に細工された Lua スクリプトを送信し、replica 上の Lua エンジンで use-after-free を引き起こす可能性があります。

**重要な条件:** このバグは、`replica-read-only disabled`(つまり書き込み可能な replica)で構成された **replica にのみ影響**します。これはデフォルト構成ではありません — デフォルトの `replica-read-only` は `yes` です。

replica が読み取り専用モード(デフォルト)で構成されている場合、インスタンスは**影響を受けません**。

#### 兆候

- Lua エンジンからのスタックトレースを伴う replica 上の Redis クラッシュ
- replica 上の `replica-read-only` = `no` 構成
- replica 上での不明なコマンド実行
- replica への許可されていないネットワーク接続

#### 緩和策(アップグレードなし)

**方法 1 — replica-read-only を有効にする(推奨、これがデフォルトです):**```bash
# Runtime
redis-cli CONFIG SET replica-read-only yes

# Trong redis.conf:
replica-read-only yes

方法2 — 通过ACL阻止Lua脚本执行:```bash redis-cli ACL SETUSER default -@scripting redis-cli ACL SETUSER default -eval -evalsha -script -function -fcall -fcall_ro redis-cli ACL SAVE

root@kitploit:~
**方法3 — 禁用Lua命令(需要重启Redis):**```bash
# Thêm vào redis.conf:
rename-command EVAL ""
rename-command EVALSHA ""
rename-command SCRIPT ""
rename-command FUNCTION ""
rename-command FCALL ""
rename-command FCALL_RO ""

スクリプトの使用方法

動作の原則

  • パラメータなし → 使用方法(ヘルプ)を表示
  • --scan → 診断、全CVEをチェック
  • --fix-... → 特定のCVEに対する修正措置を適用``` $ ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh → hiển thị banner + HELP + thoát
root@kitploit:~
### システム要件

- **OS:** Linux(Ubuntu、Debian、CentOS、RHEL、...)
- **ツール:** `redis-cli`(通常は `redis-tools` または `redis` パッケージに含まれています)
- **権限:** `redis.conf` ファイルの読み取り/書き込み権限(修正用)
- **接続:** チェック対象の Redis インスタンスへのネットワーク接続

### redis-cli のインストール(未導入の場合)```bash
# Ubuntu/Debian
sudo apt update && sudo apt install -y redis-tools

# CentOS/RHEL 7
sudo yum install -y redis

# CentOS/RHEL 8+/Fedora
sudo dnf install -y redis

# Hoặc từ source
wget https://download.redis.io/releases/redis-stable.tar.gz
tar xzf redis-stable.tar.gz
cd redis-stable && make redis-cli
sudo cp src/redis-cli /usr/local/bin/

使用方法

1. ヘルプを表示```bash

Cấp quyền thực thi

chmod +x CVE-2026-25589-25588-25243-23631-23479-REDIS.sh

Chạy không tham số → hiển thị help

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh

Hoặc tường minh

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --help

root@kitploit:~
#### 2. 全CVEスキャン(診断)```bash
# Local Redis
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan

# Redis từ xa
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -H 192.168.1.100 -p 6379 -a "your_password"

# Với ACL user
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -H 10.0.0.50 -p 6380 -u admin -a "admin_password"

# Qua Unix socket
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -s /var/run/redis/redis-server.sock

# Kèm xuất báo cáo
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -o redis_cve_report_$(date +%Y%m%d).txt

3. CVEごとの個別修正```bash

Fix tung CVE cu the

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-cve-23479 ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-cve-25243 -H 10.0.0.1 -a mypassword ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-cve-25588 ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-cve-25589 ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-cve-23631 -c /etc/redis/redis.conf

root@kitploit:~
#### 4. グループでのクイック修正(推奨)```bash
# Chan RESTORE → bao ve 3/5 CVE (25243 + 25588 + 25589)
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-restore

# Chan blocking commands → bao ve CVE-2026-23479
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-blocking

# Chan Lua + bat replica-read-only → bao ve CVE-2026-23631
./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-lua

5. 完全な修正```bash

Fix tat ca CVE (co backup config)

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-all

Fix all voi file config rieng

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-all
-c /etc/redis/redis.conf

Fix all khong backup (khong khuyen nghi)

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-all --no-backup

Fix all Redis tu xa

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --fix-all
-H 10.0.0.1 -p 6379 -a mypassword

root@kitploit:~
### 完全なパラメータ表

#### アクションパラメータ(ACTION)— 必須

| パラメータ        | 機能                                    | 保護されるCVE数               |
| ----------------- | --------------------------------------- | ----------------------------- |
| *(パラメータなし)* | 使用方法を表示                          | —                             |
| `--scan`          | 5つのCVEすべてを診断スキャン            | —                             |
| `--fix-all`       | すべてのCVEを修正                      | **5/5**                       |
| `--fix-restore`   | **[高速]** RESTOREコマンドのみブロック  | **3/5** (25243, 25588, 25589) |
| `--fix-blocking`  | **[高速]** blockingコマンドのみブロック | **1/5** (23479)               |
| `--fix-lua`       | **[高速]** Luaをブロック + replica-read-onlyを有効化 | **1/5** (23631)               |
| `--fix-cve-23479` | CVE-2026-23479を修正                   | 1/5                           |
| `--fix-cve-25243` | CVE-2026-25243を修正                   | 1/5                           |
| `--fix-cve-25588` | CVE-2026-25588を修正                   | 1/5                           |
| `--fix-cve-25589` | CVE-2026-25589を修正                   | 1/5                           |
| `--fix-cve-23631` | CVE-2026-23631を修正                   | 1/5                           |

#### 接続パラメータ

| パラメータ            | 説明                    | デフォルト   |
| --------------------- | ----------------------- | ------------ |
| `-H, --host HOST`     | Redisホストアドレス     | `127.0.0.1`  |
| `-p, --port PORT`     | Redisポート             | `6379`       |
| `-a, --pass PASS`     | Redisパスワード         | *(空)*       |
| `-u, --user USER`     | ACLユーザー名           | `default`    |
| `-s, --socket PATH`   | Unixソケットパス        | *(空)*       |

#### 追加パラメータ

| パラメータ            | 説明                                    | デフォルト                 |
| --------------------- | --------------------------------------- | -------------------------- |
| `-h, --help`          | ヘルプを表示                            | —                          |
| `-c, --config FILE`   | redis.confのパス                        | `/etc/redis/redis.conf`    |
| `-o, --output FILE`   | レポートをファイルに出力(`--scan`のみ)| *(空)*                     |
| `--redis-cli PATH`    | redis-cliバイナリのパス                 | `redis-cli` (PATHから)     |
| `--no-backup`         | 修正前にconfigをバックアップしない      | `false`                    |

### 終了コード(Exit Codes)

| コード | 意味                                                    |
| ------ | ------------------------------------------------------- |
| `0`    | 成功 — CVEが検出されないか、修正が完了                  |
| `1`    | エラー: redis-cliが見つからないか、接続できない         |
| `2`    | `--scan`が少なくとも1つのCVEを検出 — 修正が必要         |

### スキャン時の出力結果(`--scan`)```
╔══════════════════════════════════════════════════════════════════════╗
║    REDIS CVE SCANNER & MITIGATION TOOL                               ║
╚══════════════════════════════════════════════════════════════════════╝

[*] THONG TIN REDIS INSTANCE
  Host:Port     : 127.0.0.1:6379
  Version       : 7.2.5
  Mode          : standalone
  Role          : master
  Modules       : timeseries bf

═══════════════════════════════════════════════════════════════════════
  [1/5] CVE-2026-23479 - Use-after-free trong Unblock Client Flow
        CVSS 7.7 (HIGH) | RCE
═══════════════════════════════════════════════════════════════════════
[✗] CO KHA NANG BI ANH HUONG - Redis 7.2.5 (can >= 7.2.14)

  ... (CVE 2-5 tuong tu)

╔══════════════════════════════════════════════════════════════════════╗
║                         TOM TAT KET QUA                              ║
╚══════════════════════════════════════════════════════════════════════╝
  [✗] CVE-2026-23479 - VULNERABLE
  [✗] CVE-2026-25243 - VULNERABLE
  [✗] CVE-2026-25588 - VULNERABLE
  [✗] CVE-2026-25589 - VULNERABLE
  [✓] CVE-2026-23631 - OK

  Ket qua: 1 PASS / 4 VULNERABLE

═══════════════════════════════════════════════════════════════════════
  [!] Phat hien 4 CVE. Su dung cac tuy chon --fix-... de khac phuc.
  VD: ./script.sh --fix-restore    # Chan RESTORE (3 CVE)
  VD: ./script.sh --fix-blocking   # Chan blocking (1 CVE)
  VD: ./script.sh --fix-lua        # Chan Lua (1 CVE)
  VD: ./script.sh --fix-all        # Khac phuc toan bo
═══════════════════════════════════════════════════════════════════════

--fix-restore 実行時の出力結果```

╔══════════════════════════════════════════════════════════════════════╗ ║ REDIS CVE SCANNER & MITIGATION TOOL ║ ╚══════════════════════════════════════════════════════════════════════╝

[*] THONG TIN REDIS INSTANCE Host:Port : 127.0.0.1:6379 Version : 7.2.5 ...

╔══════════════════════════════════════════════════════════════════════╗ ║ FIX NHANH: Chan RESTORE (CVE-2026-25243 + 25588 + 25589) ║ ╚══════════════════════════════════════════════════════════════════════╝ Bao ve 3/5 CVE chi voi 1 lenh chan RESTORE

[+] Da backup redis.conf toi: /etc/redis/redis.conf.cve-backup-20260508_120000 [*] Chan RESTORE qua ACL (khong can restart) => ACL SETUSER default -restore ... OK => ACL SAVE ... OK

[*] rename-command RESTORE "" (can restart) => Vo hieu hoa: rename-command RESTORE "" [!] CAN RESTART REDIS de rename-command co hieu luc

[✓] Da chan RESTORE. Cac CVE duoc bao ve:

  • CVE-2026-25243 (RESTORE double-free/OOB)
  • CVE-2026-25588 (RESTORE + RedisTimeSeries)
  • CVE-2026-25589 (RESTORE + RedisBloom)
root@kitploit:~
---

## 一般的な修復方法

### 方法1: ACL(Redis >= 6.0)— 推奨

これは**最も安全かつ柔軟な方法**であり、Redisの再起動は不要です。```bash
# Tao ACL user an toan cho ung dung
redis-cli ACL SETUSER app_user on >StrongPassword123 ~* \
    +@read \           # Quyen doc du lieu
    +@write \          # Quyen ghi du lieu
    -@dangerous \      # CHAN tat ca lenh nguy hiem (gồm RESTORE)
    -@admin \          # CHAN lenh quan tri
    -@scripting \      # CHAN Lua scripting
    -@blocking \       # CHAN blocking commands
    -@keyspace \       # CHAN keyspace notifications
    -@pubsub           # CHAN pub/sub (neu khong dung)

# Vo hieu hoa default user
redis-cli ACL SETUSER default off

# Luu ACL vinh vien
redis-cli ACL SAVE

方法2: rename-command — Redisの再起動が必要

redis.confに以下の行を追加します:```conf

Vo hieu hoa RESTORE (CVE-2026-25243, 25588, 25589)

rename-command RESTORE ""

Vo hieu hoa blocking commands (CVE-2026-23479)

rename-command BLPOP "" rename-command BRPOP "" rename-command BRPOPLPUSH "" rename-command BLMOVE "" rename-command BLMPOP "" rename-command BZPOPMIN "" rename-command BZPOPMAX "" rename-command BZMPOP "" rename-command XREAD "" rename-command XREADGROUP ""

Vo hieu hoa Lua commands (CVE-2026-23631)

rename-command EVAL "" rename-command EVALSHA "" rename-command SCRIPT "" rename-command FUNCTION "" rename-command FCALL "" rename-command FCALL_RO ""

root@kitploit:~
その後、Redisを再起動します:```bash
sudo systemctl restart redis-server
# hoặc
sudo service redis-server restart

方法3: ネットワーク構成 + ファイアウォール```bash

Trong redis.conf:

protected-mode yes bind 127.0.0.1 192.168.1.10 # Chi lang nghe IP tin cay

iptables — chi cho phep IP noi bo

iptables -A INPUT -p tcp --dport 6379 -s 127.0.0.1 -j ACCEPT iptables -A INPUT -p tcp --dport 6379 -s 10.0.0.0/8 -j ACCEPT iptables -A INPUT -p tcp --dport 6379 -j DROP

Luu iptables

iptables-save > /etc/iptables/rules.v4

root@kitploit:~
### 方法4:以最小权限运行Redis```bash
# Tao user redis khong co shell
sudo useradd -r -s /bin/false redis

# Chown thu muc Redis
sudo chown -R redis:redis /var/lib/redis
sudo chown -R redis:redis /etc/redis

# Chay Redis duoi user redis
sudo -u redis redis-server /etc/redis/redis.conf

方法5:不要なモジュールの削除```bash

Kiem tra module dang nap

redis-cli MODULE LIST

Go bo module khong can thiet

redis-cli MODULE UNLOAD timeseries # CVE-2026-25588 redis-cli MODULE UNLOAD bf # CVE-2026-25589

Xoa loadmodule khoi redis.conf

Tim va xoa dong:

loadmodule /path/to/redistimeseries.so

loadmodule /path/to/redisbloom.so

root@kitploit:~
---

## リスク評価 — 内部Redisシステム / Sentinel

このセクションは、ファイアウォール(Fortinet、iptablesなど)で保護され、**インターネットへの直接接続がない**内部ネットワーク上で動作する**Redis Sentinel**クラスタまたはスタンドアロンRedisに関するものです。

### 概要

| 現在の保護レベル           | リスク軽減効果?                                             | アップグレードは必要か?                         |
| ------------------------------- | -------------------------------------------------------------- | ---------------------------------------- |
| インターネットアクセスなし         | **はい** — 外部からの攻撃者を排除                         | 緊急ではない                            |
| Fortinetファイアウォール(IPS/DPI搭載)  | **はい** — 送信元IPをフィルタリング、IPSが異常なペイロードを検出可能 | 緊急ではない                            |
| iptables(送信元IP制限)    | **はい** — 許可されたIPのみがRedisポートに接続可能           | 緊急ではない                            |
| **上記3つの対策の組み合わせ** | **悪用確率を非常に低く抑える**                           | **緊急ではないが、計画を立てるべき** |

### 重要ポイント: なぜファイアウォールだけでは不十分なのか?

5つのCVEすべてに共通点があります: 攻撃者はRedisに対して**認証済み**である必要があります(PR:L — CVSSベクターにおける特権レベル: 低)。ファイアウォールは許可されていないIPからの接続をブロックしますが、以下の脅威からは**保護しません**:

| 脅威                                                                                                         | 発生可能性               | 悪用された場合の影響                                                     |
| ------------------------------------------------------------------------------------------------------------------ | ----------------------------- | ---------------------------------------------------------------------------- |
| **悪意のある内部従業員** — 内部ネットワークへのアクセス権 + Redisパスワードを知っている                                 | 低いが排除はできない | Redisサーバー上での**RCE**、特権昇格、データ窃取             |
| **内部マシンの乗っ取り(ラテラルムーブメント)** — 攻撃者がネットワーク内の任意の1台に侵入し、そこからRedisを攻撃 | 中程度                    | Redisデータ全体が窃取/改変/削除される; 攻撃者はバックドアを仕掛ける可能性 |
| **ファイアウォールの設定ミス** — 誤ったルール変更によりRedisポートが外部に公開される                                    | 低い                          | インターネットへの直接公開と同等に                                      |
| **サプライチェーン / サードパーティ** — パートナーやベンダーが内部ネットワークへのVPN接続を持っている                                    | 低い                          | RCE、データ流出                                                       |
| **ファイアウォール/ネットワーク自体の脆弱性** — 攻撃者が別の脆弱性を通じてファイアウォールを突破                 | 非常に低い                      | 内部システム全体が影響を受ける                                         |

### 定量的リスク分析```
Rủi ro = Xác suất khai thác × Hậu quả

Với firewall + air-gap:
  = (RẤT THẤP: 0.5% - 2%/năm) × (NGHIÊM TRỌNG: RCE toàn hệ thống, mất toàn bộ dữ liệu)
  = RỦI RO TRUNG BÌNH — vẫn đáng quan tâm

Sentinel クラスタ固有の脅威モデル

Redis Sentinel クラスタには、独自のリスクが追加されます:

Sentinel 攻撃ベクトル説明関連 CVE
Sentinel 乗っ取り — 攻撃者が Sentinel ノードを乗っ取り、そこから悪意のあるレプリカへフェイルオーバーさせるSentinel は専用ポート(通常 26379)で通信するため、個別に保護されていない場合CVE-2026-23631(レプリカが replica-read-only no の場合)
レプリカ昇格 — 乗っ取られたレプリカがマスターに昇格されるクラスタ全体のデータが改ざんされる全 RESTORE CVE(25243、25588、25589)
マスター-レプリカ同期 — 攻撃者が同期フローを傍受する同期中にデータが盗まれるCVE-2026-23631

優先度別の推奨事項

優先度アクション実行時間ダウンタイムが必要か
P0 — 今すぐ全ノード(マスター + レプリカ + Sentinel)でチェックスクリプトを実行: ./CVE-...sh -H <ip> -p <port> -a <pass>ノードあたり 2〜5 分なし
P0 — 今すぐ全レプリカで replica-read-only yes を確認: redis-cli CONFIG GET replica-read-onlyノードあたり 1 分なし
P1 — 今週中ACL で RESTORE をブロック(再起動不要): redis-cli ACL SETUSER default -restore; redis-cli ACL SAVEノードあたり 2 分なし
P1 — 今週中ACL で @blocking コマンドをブロック(CVE-2026-23479)ノードあたり 2 分なし
P1 — 今週中Lua を使用しない場合、ACL で @scripting コマンドをブロック(CVE-2026-23631)ノードあたり 2 分なし
P2 — 次のメンテナンス窓口redis.conf に rename-command RESTORE ""、rename-command EVAL "" などを追加10 分(再起動あり)あり(Redis 再起動)
P2 — 次のメンテナンス窓口Redis をパッチ適用済みバージョン(6.2.22、7.2.14、7.4.9、8.2.6、8.4.3、8.6.3)にアップグレードクラスタあたり 30〜60 分あり(クラスタ全体の再起動)

例: ACL による Sentinel クラスタ全体の保護(ダウンタイムなし)```bash

============================================

Chay tren TUNG node Redis (master + replica)

============================================

1. Tao ACL user an toan cho ung dung

redis-cli -h <node_ip> -p 6379 -a ACL SETUSER app_user on >StrongPass123 ~*
+@read +@write
-@dangerous -@admin -@scripting -@blocking
-restore -debug

2. Vo hieu hoa default user

redis-cli -h <node_ip> -p 6379 -a ACL SETUSER default off

3. Luu ACL

redis-cli -h <node_ip> -p 6379 -a ACL SAVE

4. Kiem tra lai

redis-cli -h <node_ip> -p 6379 -a --user app_user --pass StrongPass123 PING

root@kitploit:~
Dưới đây là bản dịch sang tiếng Nhật cho chunk 71/91:

---

- **`--no-verify`**: Bỏ qua xác minh chữ ký và checksum khi tải xuống (mặc định: `false`).
- **`--proxy`**: Chỉ định proxy HTTP(S) để sử dụng cho các yêu cầu mạng (ví dụ: `http://proxy.example.com:8080`).
- **`--timeout`**: Đặt thời gian chờ tối đa (tính bằng giây) cho mỗi yêu cầu mạng (mặc định: `30`).
- **`--retries`**: Số lần thử lại tối đa cho các yêu cầu mạng bị lỗi (mặc định: `3`).
- **`--verbose`**: Bật đầu ra chi tiết để gỡ lỗi (mặc định: `false`).

### Ví dụ sử dụng

```bash
# Tải xuống và cài đặt công cụ với cấu hình mặc định
kitploit install metasploit

# Cài đặt một phiên bản cụ thể của công cụ
kitploit install nmap --version 7.94

# Cài đặt nhiều công cụ cùng lúc
kitploit install sqlmap nikto wpscan

# Cài đặt công cụ vào thư mục tùy chỉnh
kitploit install hydra --install-dir /opt/tools

# Cập nhật tất cả các công cụ đã cài đặt
kitploit update --all

# Liệt kê tất cả các công cụ có sẵn
kitploit list

# Tìm kiếm công cụ theo tên hoặc mô tả
kitploit search "web scanner"

# Xem thông tin chi tiết về một công cụ
kitploit info burpsuite

# Gỡ cài đặt một công cụ
kitploit uninstall aircrack-ng

Cấu trúc thư mục

Sau khi cài đặt, Kitploit sẽ tạo cấu trúc thư mục sau:

root@kitploit:~
~/.kitploit/
├── config.yaml          # Tệp cấu hình chính
├── tools/               # Thư mục chứa các công cụ đã cài đặt
│   ├── metasploit/
│   ├── nmap/
│   └── ...
├── cache/               # Bộ nhớ cache cho các bản tải xuống
└── logs/                # Tệp nhật ký hoạt động

Tệp cấu hình

Tệp config.yaml cho phép bạn tùy chỉnh hành vi của Kitploit. Dưới đây là một ví dụ:

root@kitploit:~
# Cấu hình Kitploit
install_dir: ~/.kitploit/tools
cache_dir: ~/.kitploit/cache
log_dir: ~/.kitploit/logs
default_timeout: 30
default_retries: 3
verify_signatures: true
proxy: ""
verbose: false

Tích hợp CI/CD

Kitploit có thể được tích hợp vào các pipeline CI/CD để tự động hóa việc cài đặt và cập nhật các công cụ bảo mật. Dưới đây là một ví dụ về GitHub Actions:

root@kitploit:~
name: Security Tools Setup

on:
  push:
    branches: [ main ]

jobs:
  setup-tools:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Install Kitploit
        run: |
          curl -sSL https://raw.githubusercontent.com/kitploit/kitploit/main/install.sh | bash
      - name: Install Security Tools
        run: |
          kitploit install nmap sqlmap nikto
      - name: Run Security Scan
        run: |
          nmap -sV target.example.com

Xử lý sự cố

Nếu bạn gặp sự cố khi sử dụng Kitploit, hãy tham khảo các mẹo sau:

  1. Lỗi mạng: Kiểm tra kết nối internet và cấu hình proxy nếu cần.
  2. Lỗi xác minh chữ ký: Sử dụng --no-verify nếu bạn tin tưởng nguồn tải xuống.
  3. Lỗi quyền: Đảm bảo bạn có quyền ghi vào thư mục cài đặt.
  4. Lỗi phụ thuộc: Một số công cụ yêu cầu các gói phụ thuộc cụ thể. Cài đặt chúng theo hướng dẫn của từng công cụ.

Đóng góp

Chúng tôi hoan nghênh mọi đóng góp từ cộng đồng! Nếu bạn muốn thêm công cụ mới hoặc cải thiện Kitploit, vui lòng:

  1. Fork repository.
  2. Tạo nhánh mới cho tính năng của bạn.
  3. Gửi pull request với mô tả chi tiết.

Giấy phép

Kitploit được phát hành dưới giấy phép MIT. Xem tệp LICENSE để biết thêm chi tiết.


Lưu ý: Kitploit chỉ nên được sử dụng cho mục đích giáo dục và kiểm tra bảo mật hợp pháp. Người dùng chịu trách nhiệm tuân thủ tất cả các luật và quy định hiện hành.


Đây là phần cuối của tài liệu README cho Kitploit.```bash

============================================

Chay tren TUNG node Sentinel (port 26379)

============================================

Sentinel thuong khong can RESTORE/EVAL — chan toan bo lenh nguy hiem

redis-cli -h <sentinel_ip> -p 26379 -a <sentinel_pass> ACL SETUSER default
-@dangerous -@admin -@scripting -@blocking -restore

redis-cli -h <sentinel_ip> -p 26379 -a <sentinel_pass> ACL SAVE

root@kitploit:~
### 決定フロー: 今すぐアップグレードする必要があるか?```
Hệ thống Redis của bạn có public-facing không?
├── CÓ → NÂNG CẤP NGAY hoặc áp dụng workaround TRONG 24H
└── KHÔNG (nội bộ / air-gapped)
    ├── Có dùng Lua scripting (EVAL/EVALSHA)?
    │   ├── CÓ → CVE-2026-23631: Kiểm tra replica-read-only, chặn @scripting qua ACL
    │   └── KHÔNG → Rủi ro thấp hơn
    ├── Có dùng RedisTimeSeries hoặc RedisBloom module?
    │   ├── CÓ → CVE-2026-25588/25589: Chặn RESTORE qua ACL, nâng cấp module
    │   └── KHÔNG → Không bị ảnh hưởng bởi 25588/25589
    ├── Có dùng blocking commands (BLPOP, XREAD, ...)?
    │   ├── CÓ → CVE-2026-23479: Chặn @blocking qua ACL hoặc rename-command
    │   └── KHÔNG → Chặn @blocking để an toàn (không ảnh hưởng)
    └── KẾT LUẬN:
        ├── Áp dụng ACL workaround NGAY TRONG TUẦN (không downtime)
        └── Lên kế hoạch nâng cấp TRONG MAINTENANCE WINDOW TIẾP THEO

結論

ファイアウォール+ネットワーク分離により、悪用の確率は非常に低くなるが、悪用された場合の影響は依然としてシステム全体のRCEである。 修正コストがほぼゼロ(再起動不要のACL数行を追加するだけ)であるため、保護対策の適用はリスク管理上有利な判断である。慌てて緊急アップグレードする必要はないが、今週中にACLの回避策を適用し、次のメンテナンスウィンドウでアップグレードを計画すべきである。


ACL REFERENCE

重要なコマンドカテゴリ

カテゴリ説明CVEへの影響
@dangerous危険なコマンド(RESTORE、FLUSHDB、FLUSHALL、KEYS、SHUTDOWN、DEBUG、CONFIGを含む)CVE-2026-25243、25588、25589
@blockingブロッキングコマンド(BLPOP、BRPOP、BZPOPMIN、XREAD、WAITなど)CVE-2026-23479
@scriptingLuaスクリプティング(EVAL、EVALSHA、SCRIPT、FUNCTION、FCALL)CVE-2026-23631
@admin管理コマンド(CONFIG、ACL、CLIENT、CLUSTER、MONITOR、SHUTDOWNなど)一般的な保護
@keyspacekeyspace関連コマンド(KEYS、SCAN、FLUSHDB、FLUSHALLなど)一般的な保護
@readデータ読み取りコマンド(GET、HGET、LRANGE、SMEMBERS、ZRANGEなど)安全
@writeデータ書き込みコマンド(SET、HSET、LPUSH、SADD、ZADDなど)安全

完全なACL設定例```bash

1. Tao admin user (day du quyen)

redis-cli ACL SETUSER admin on >AdminPass123 ~* +@all

2. Tao app user (quyen gioi han)

redis-cli ACL SETUSER app on >AppPass123 ~*
+@read
+@write
-@dangerous
-@admin
-@scripting
-@blocking
-restore
-debug

3. Tao readonly user (chi doc)

redis-cli ACL SETUSER reader on >ReaderPass123 ~*
+@read
-@dangerous
-@admin
-@scripting

4. Vo hieu hoa default user

redis-cli ACL SETUSER default off

5. Luu ACL

redis-cli ACL SAVE

6. Kiem tra ACL

redis-cli ACL LIST

root@kitploit:~
### 効果的なACLチェック```bash
# Liet ke tat ca ACL rules
redis-cli ACL LIST

# Kiem tra quyen cua mot user
redis-cli ACL GETUSER app

# Kiem tra user hien tai
redis-cli ACL WHOAMI

# Xem log vi pham ACL
redis-cli ACL LOG

定期検査プロセス

1. 単発検査(アドホック)```bash

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan
-H <redis_host> -p -a
-o report_$(date +%Y%m%d_%H%M%S).txt

root@kitploit:~
### 2. 複数のRedisインスタンスを一括チェック

`redis_hosts.txt`ファイルを作成します:```
# Format: host:port:password:user
10.0.0.1:6379:pass1:default
10.0.0.2:6379:pass2:default
10.0.0.3:6380:pass3:admin

Script kiểm tra hàng loạt:```bash #!/bin/bash

File: batch_check.sh

BATCH_RESULT="batch_result_$(date +%Y%m%d_%H%M%S).txt"

while IFS=':' read -r host port pass user; do [[ "$host" =~ ^#.* ]] && continue # Bo qua comment [[ -z "$host" ]] && continue # Bo qua dong trong

root@kitploit:~
echo "============================================" | tee -a "$BATCH_RESULT"
echo "Kiem tra: $host:$port" | tee -a "$BATCH_RESULT"
echo "============================================" | tee -a "$BATCH_RESULT"

./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -H "$host" -p "${port:-6379}" \
    -a "${pass:-}" -u "${user:-default}" \
    2>&1 | tee -a "$BATCH_RESULT"

echo "" | tee -a "$BATCH_RESULT"

done < redis_hosts.txt

echo "Bao cao tong hop: $BATCH_RESULT"

root@kitploit:~
### 3. cronへの統合(毎日のチェック)```bash
# Them vao crontab (chay hang ngay luc 7:00 AM)
0 7 * * * /opt/scripts/CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan \
    -H 127.0.0.1 -p 6379 -a mypassword \
    -o /var/log/redis/cve_report_$(date +\%Y\%m\%d).txt \
    > /dev/null 2>&1

4. CI/CDパイプラインへの統合```yaml

GitLab CI example

redis-security-scan: stage: security image: redis:7-alpine script: - chmod +x CVE-2026-25589-25588-25243-23631-23479-REDIS.sh - ./CVE-2026-25589-25588-25243-23631-23479-REDIS.sh --scan
-H $REDIS_HOST -p $REDIS_PORT -a $REDIS_PASS
-o cve_report.txt artifacts: paths: - cve_report.txt when: always allow_failure: true

root@kitploit:~
---

## よくある質問(FAQ)

### Q: `--fix-...` を適用した後、Redis を再起動する必要がありますか?

**A:** はい、`rename-command` の変更については、Redis の再起動後にのみ有効になります。`CONFIG SET` による変更(`protected-mode`、`replica-read-only` など)は即座に有効になります。`ACL SETUSER` + `ACL SAVE` による変更は即座に有効になり、**再起動は不要です**。ACL のみを使用する場合(`--fix-restore`、`--fix-blocking`、`--fix-lua`)、再起動は必要ありません。スクリプトは多層防御のため、常に ACL(ランタイム)と rename-command(再起動が必要)を同時に適用します。

### Q: RESTORE のブロックは通常の運用に影響しますか?

**A:** `RESTORE` コマンドは通常、以下の場合にのみ使用されます:

- バックアップからのデータ復元
- インスタンス間のデータ移行
- カスタムデータ同期

アプリケーションが RESTORE を使用しない場合、このコマンドをブロックしても安全です。使用する場合は、RESTORE 権限を持つ専用の ACL ユーザーを作成し、管理目的のみに使用してください。

### Q: Redis < 6.0 を使用していますが、ACL が利用できません。どうすればよいですか?

**A:** Redis < 6.0 の場合、`rename-command` のみを使用してコマンドを無効化できます。手順は以下のとおりです:

1. `rename-command RESTORE ""` を redis.conf に追加する
2. blocking コマンド用の `rename-command` を追加する
3. `protected-mode yes` を有効にする
4. 強力なパスワードで `requirepass` を設定する
5. ファイアウォールで接続を制限する
6. Redis を再起動する

### Q: RedisTimeSeries/RedisBloom モジュールがロードされているかどうかを確認するにはどうすればよいですか?

**A:** 次のコマンドを実行します:```bash
redis-cli MODULE LIST

出力には、読み込み済みモジュールのリストとバージョンが表示されます。timeseries または bf が表示されない場合、そのモジュールは読み込まれていません。

Q: --fix-all / --fix-restore / --fix-... は本番環境で安全ですか?

A: fix コマンドは安全な変更を実行します:

  • 修正前に redis.conf をバックアップします(--no-backup を使用しない限り)
  • ACL(-restore、-@blocking、-@scripting):即座に有効になり、ダウンタイムなし、簡単に元に戻せます
  • rename-command:有効にするには Redis の再起動が必要です
  • CONFIG SET:ランタイムで有効ですが、redis.conf に書き込まれていない場合は再起動で失われます

推奨事項:本番環境では、まず --fix-restore、--fix-blocking、--fix-lua を使用することを優先してください(ACL のみで、再起動は不要です)。その後、rename-command を使用して再起動するためのメンテナンスウィンドウをスケジュールしてください。

Q: --fix-... による変更を元に戻す(ロールバック)にはどうすればよいですか?

A:

  1. バックアップがある場合:バックアップファイルを redis.conf に上書きコピーし、その後 Redis を再起動します
  2. CONFIG SET を使用した場合:Redis を再起動すると、ファイルから設定が復元されます
  3. ACL SETUSER を使用した場合:ACL SETUSER <user> +<cmd> を使用して権限を復元します

Q: Redis をアップグレードすべきですか?

A: はい、可能であれば。 パッチ適用済みバージョンへのアップグレードが最も根本的な解決策です。このスクリプトは以下のようなケースを対象としています:

  • アプリケーションの制約によりすぐにアップグレードできない
  • 新しいバージョンのテストに時間が必要
  • メンテナンスウィンドウを待つ間の一時的な保護手段が必要

Q: Redis は内部で実行されており、インターネットには公開されておらず、ファイアウォールで保護されています — アップグレードは必要ですか?

A: 緊急のアップグレードは不要ですが、回避策を適用し、アップグレードを計画すべきです。理由は以下の通りです:

  • ファイアウォールは攻撃される確率を減らすだけで、リスクを完全に排除するものではありません
  • 内部ネットワーク内の攻撃者(悪意のある従業員、乗っ取られたマシン、ラテラルムーブメント)は依然として悪用可能です
  • 悪用された場合の影響はシステム全体の RCE — 最も深刻度の高いレベルです
  • 回避策のコストは非常に低い:ACL -restore -@blocking -@scripting を追加するのに 2 分かかり、ダウンタイムはありません

推奨ロードマップ:

  1. 今週中に: ACL 回避策を適用(ダウンタイムなし)
  2. 次のメンテナンスウィンドウで: Redis をアップグレードし、rename-command を追加

詳細は リスク評価 — 内部 Redis システム / Sentinel を参照してください。


参考情報

  • Redis 公式セキュリティアドバイザリ
  • GitHub Advisory — CVE-2026-25243 (RESTORE RCE)
  • GitHub Advisory — CVE-2026-23631 (Lua UAF)
  • Redis ACL ドキュメント
  • Redis rename-command ドキュメント
  • NVD — CVE-2026-25243
  • NVD — CVE-2026-25588
  • OpenCVE — CVE-2026-23479
  • Tenable — CVE-2026-23631

免責事項: このドキュメントは、Redis セキュリティアドバイザリおよび NVD などの公開情報に基づいて作成されています。ユーザーは、適用前にご自身の環境に適した修正措置を確認し、検証する責任を負います。

ツールをダウンロード